Don't flag pin missing driver when there is an NC

The NC flag indicates user intention to override the lack of connection
to input pins

(cherry picked from commit e02229a234)
This commit is contained in:
Seth Hillbrand 2022-04-07 09:29:02 -07:00
parent c17b90c8dc
commit 702623ef87
1 changed files with 5 additions and 1 deletions

View File

@ -453,9 +453,13 @@ int ERC_TESTER::TestPinToPin()
{ {
std::vector<SCH_PIN*> pins; std::vector<SCH_PIN*> pins;
std::unordered_map<EDA_ITEM*, SCH_SCREEN*> pinToScreenMap; std::unordered_map<EDA_ITEM*, SCH_SCREEN*> pinToScreenMap;
bool has_noconnect = false;
for( CONNECTION_SUBGRAPH* subgraph: net.second ) for( CONNECTION_SUBGRAPH* subgraph: net.second )
{ {
if( subgraph->m_no_connect )
has_noconnect = true;
for( EDA_ITEM* item : subgraph->m_items ) for( EDA_ITEM* item : subgraph->m_items )
{ {
if( item->Type() == SCH_PIN_T ) if( item->Type() == SCH_PIN_T )
@ -552,7 +556,7 @@ int ERC_TESTER::TestPinToPin()
} }
} }
if( needsDriver && !hasDriver ) if( needsDriver && !hasDriver && !has_noconnect )
{ {
int err_code = ispowerNet ? ERCE_POWERPIN_NOT_DRIVEN : ERCE_PIN_NOT_DRIVEN; int err_code = ispowerNet ? ERCE_POWERPIN_NOT_DRIVEN : ERCE_PIN_NOT_DRIVEN;