gnetlist fails to use inherited refdes= attribute

Bug #781097 reported by Peter Clifton
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gEDA
Triaged
Low
Unassigned

Bug Description

Whilst this is a rare thing to want to do (most symbols have (if any), a refdes such as "U?" or "C?", I encountered a design at work which failed to netlist with git HEAD gEDA.

I discovered the refdes had been attached inside the embedded copy of a symbol, rather than attached as a schematic level attribute of that symbol.

Since it is conceivable that someone might want a symbol with a refdes defaulted inside it, we should probably support such usage.

Tags: gnetlist
Revision history for this message
Peter Clifton (pcjc2) wrote :

I've attached a test-case.

Netlist with "gnetlist -g PCB embedded_test_case.sch"

Gives the error message:

"Could not find refdes on component and could not find any special attributes!"

Refdes should be C100, as in the embedded symbol data.

Peter Clifton (pcjc2)
Changed in geda:
importance: Undecided → Low
status: New → Confirmed
status: Confirmed → Incomplete
status: Incomplete → Fix Committed
status: Fix Committed → Confirmed
tags: added: gnetlist
Peter TB Brett (peter-b)
Changed in geda:
status: Confirmed → Triaged
Peter TB Brett (peter-b)
Changed in geda:
assignee: nobody → Peter TB Brett (peter-b)
Peter TB Brett (peter-b)
Changed in geda:
status: Triaged → In Progress
Revision history for this message
Peter TB Brett (peter-b) wrote :

I attach a patch which fixes this bug. However, I'm not sure whether to commit it. The main problem is that failing to attach a refdes attribute is a common error, and with this patch all components to which you've failed to attach a refdes will silently just use the generic inherited refdes attribute (e.g. "refdes=U?").

At the same time, I'm loathe to add "special case" handling. This seems more like the sort of thing that DRC/schematic consistency checks should be used to detect. WDYT?

Revision history for this message
Peter Clifton (pcjc2) wrote :

Longer term, perhaps we should consider adding a mechanism to provide place-holder attibutes in symbols which are not actually evaluated when computing the "effective" value of a particular attribute for a given entity.

This would allow the distinction between a default attribute in the symbol which is inherited and useful, vs. a hint or suggestion that the user _should_ add a particular attribute in the schematic.

Revision history for this message
Peter TB Brett (peter-b) wrote :

Yes, such a mechanism would be handy. I think I've more-or-less decided that we shouldn't commit this patch right now. If someone finds the bug annoying they can apply it locally, I suppose.

Changed in geda:
assignee: Peter TB Brett (peter-b) → nobody
status: In Progress → Triaged
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.