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 );