From c4f61c2eaf4f0aa1a1662508520df1cdde227391 Mon Sep 17 00:00:00 2001
From: Jeff Young <jeff@rokeby.ie>
Date: Wed, 26 Jun 2024 14:54:45 +0100
Subject: [PATCH] Check for unresolved fields in labels.

---
 eeschema/erc/erc.cpp | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/eeschema/erc/erc.cpp b/eeschema/erc/erc.cpp
index 737a3aaa6e..bdddeba7cc 100644
--- a/eeschema/erc/erc.cpp
+++ b/eeschema/erc/erc.cpp
@@ -222,6 +222,21 @@ void ERC_TESTER::TestTextVars( DS_PROXY_VIEW_ITEM* aDrawingSheet )
                     }
                 }
             }
+            else if( SCH_LABEL_BASE* label = dynamic_cast<SCH_LABEL_BASE*>( item ) )
+            {
+                for( SCH_FIELD& field : label->GetFields() )
+                {
+                    if( unresolved( field.GetShownText( &sheet, true ) ) )
+                    {
+                        auto ercItem = ERC_ITEM::Create( ERCE_UNRESOLVED_VARIABLE );
+                        ercItem->SetItems( &field );
+                        ercItem->SetSheetSpecificPath( sheet );
+
+                        SCH_MARKER* marker = new SCH_MARKER( ercItem, field.GetPosition() );
+                        screen->Append( marker );
+                    }
+                }
+            }
             else if( item->Type() == SCH_SHEET_T )
             {
                 SCH_SHEET* subSheet = static_cast<SCH_SHEET*>( item );