Flag ERC error on non-stacked pins

Pins that are explicitly connected in the schematic should not have an
"unconnected pin" ERC error.  But stacked pins do not count as
explicitly connected because the schematic designer has not connected
them

(cherry picked from commit 865bb54591)
This commit is contained in:
Seth Hillbrand 2022-07-17 20:15:22 -07:00
parent 49bf717c0e
commit 283446a3a8
1 changed files with 15 additions and 3 deletions

View File

@ -2673,9 +2673,21 @@ bool CONNECTION_GRAPH::ercCheckNoConnects( const CONNECTION_SUBGRAPH* aSubgraph
{
case SCH_PIN_T:
{
// Only consider a connection to be between pins on different symbols
if( !pins.empty() && ( item->GetParent() != pins.front()->GetParent() ) )
has_other_connections = true;
// Stacked pins do not count as other connections but non-stacked pins do
if( !has_other_connections && !pins.empty() )
{
SCH_PIN* pin = static_cast<SCH_PIN*>( item );
for( SCH_PIN* other_pin : pins )
{
if( other_pin->GetParent() != pin->GetParent()
|| other_pin->GetPosition() != pin->GetPosition() )
{
has_other_connections = true;
break;
}
}
}
pins.emplace_back( static_cast<SCH_PIN*>( item ) );