[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
gEDA-user: drc2 crash
I am attempting to run the drc2 check with gnetlist. I have checked
each individual schematic separately, and drc2 works fine. But when I
tried to run them altogether I am getting the following crash:
In /sw/share/gEDA/scheme/gnet-drc2.scm:
518: 647 (if (null? list) 0 ...)
...
525: 648 [+ 0 ...
525: 649* [drc2:count-reference-in-list "FB17" ("R116" "C177" "C176"
...)]
518: 650 (if (null? list) 0 ...)
...
525: 651 [+ 0 ...
525: 652* [drc2:count-reference-in-list "FB17" ("C177" "C176" "J36"
...)]
518: 653 (if (null? list) 0 ...)
...
525: 654 [+ 0 ...
525: 655* [drc2:count-reference-in-list "FB17" ("C176" "J36" "R115"
...)]
518: 656 (if (null? list) 0 ...)
...
525: 657 [+ 0 ...
525: 658* [drc2:count-reference-in-list "FB17" ("J36" "R115"
"C175" ...)]
518: 659 (if (null? list) 0 ...)
...
525: 660 [+ 0 ...
525: 661* [drc2:count-reference-in-list "FB17" ("R115" "C175"
"R114" ...)]
518: 662 (if (null? list) 0 ...)
520: 663 (let* ((comparison #)) (if comparison (+ 1 #) (+ 0 #)))
520: 664* (if (defined? #) (string-ci=? refdes #) (string=?
refdes #))
520: 665* [defined? ...
520: 666* (quote case_insensitive)
/sw/share/gEDA/scheme/gnet-drc2.scm:520:42: In expression (quote
case_insensitive):
/sw/share/gEDA/scheme/gnet-drc2.scm:520:42: Stack overflow
This appears to me to be a genuine stack overflow. That is the in the
line
(+ 0 (drc2:count-reference-in-list refdes (cdr list))))
my list is so long it is crashing gnetlist. I suspect this is getting
called from line 538:
(if (> (drc2:count-reference-in-list refdes
(gnetlist:get-non-unique-packages ""))
In my case:
guile> ( gnetlist:get-non-unique-packages "")
("FB17" "J66" "R182" "R181" "R180" "C249" "C248" "C247" "C246" "C245"
"C244" "U89" "C243" "C242" "C241" "C240" "R179" "U88" "C239" "C238"
"R178" "U87" "J65" "J64" "U86" "C237" "C236" "R177" "R176" "J63" "R175"
"C235" "R174" "C234" "FB16" "J62" "U85" "Q12" "R173" "U84" "R172"
"R171" "J61" "R170" "C233" "R169" "C232" "C231" "C230" "C229" "C228"
"C227" "C226" "C225" "C224" "C223" "C222" "C221" "C220" "C219" "FB15"
"FB14" "C218" "C217" "J60" "C216" "J59" "U83" "C215" "C214" "J58" "U82"
"R168" "R167" "R166" "J57" "J56" "J55" "J54" "J53" "J52" "R165" "R164"
"U81" "C213" "Q11" "R163" "U80" "R162" "R161" "R160" "J51" "R159"
"C212" "R158" "Q10" "Q9" "R157" "R156" "U79" "U78" "C211" "C210" "C209"
"C208" "C207" "R155" "R154" "J50" "R153" "C206" "R152" "U77" "J49"
"R151" "R150" "R149" "R148" "J48" "R147" "C205" "R146" "U76" "U75"
"R145" "R144" "Q8" "Q7" "R143" "R142" "U74" "U73" "C204" "C203" "C202"
"C201" "C200" "R141" "R140" "J47" "R139" "C199" "R138" "U72" "J46"
"R137" "R136" "R135" "C198" "FB13" "J45" "R134" "J44" "R133" "C197"
"R132" "U71" "U70" "CONN4" "J43" "J42" "R131" "R130" "J41" "J40" "C196"
"FB12" "J39" "C195" "FB11" "J38" "U69" "R129" "R128" "C194" "C193"
"C192" "C191" "U68" "R127" "R126" "C190" "C189" "C188" "C187" "U67"
"R125" "R124" "C186" "C185" "C184" "C183" "U66" "R123" "R122" "C182"
"C181" "C180" "C179" "U65" "C178" "CONN3" "CONN2" "CONN1" "U64" "Q6"
"R121" "U63" "R120" "R119" "R118" "R117" "J37" "R116" "C177" "C176"
"J36" "R115" "C175" "R114" "J35" "R113" "C174" "R112" "J34" "R111"
"C173" "C172" "C171" "FB10" "J33" "U62" "U61" "TP8" "TP7" "TP6" "TP5"
"TP4" "TP3" "TP2" "TP1" "STAND4" "STAND3" "STAND2" "STAND1" "R110" "Q5"
"R109" "U60" "R108" "R107" "R106" "Q4" "R105" "U59" "R104" "R103"
"R102" "C170" "C169" "C168" "R101" "J32" "U58" "J31" "R100" "C167"
"C166" "FB9" "J30" "J29" "R99" "C165" "C163" "C162" "C161" "C160"
"C159" "C158" "C157" "C156" "C155" "C154" "C153" "C152" "C151" "C150"
"C149" "C148" "C147" "C146" "C145" "C144" "C143" "C142" "C141" "C140"
"C139" "C138" "C137" "C136" "C135" "C134" "C133" "C132" "C131" "C130"
"FB8" "J28" "C129" "FB7" "J27" "U57" "U56" "U55" "U54" "U53" "U52"
"R98" "U51" "U50" "U49" "U48" "U47" "U46" "U45" "U44" "R97" "J26" "J25"
"U43" "U42" "U41" "R96" "R95" "R94" "R93" "J24" "U40" "U39" "C128"
"C127" "C126" "C125" "R92" "R91" "R90" "R89" "R88" "U38" "C124" "C123"
"C122" "C121" "R87" "R86" "R85" "R84" "R83" "U37" "C120" "C119" "C118"
"C117" "R82" "R81" "R80" "R79" "R78" "C116" "FB6" "J23" "U36" "R77"
"R76" "J22" "R75" "J21" "R74" "C115" "C114" "FB5" "J20" "C113" "C112"
"U35" "U34" "U33" "C111" "U32" "R73" "U31" "D2" "D1" "U30" "U29" "U28"
"R72" "R71" "C110" "C109" "C108" "U27" "C107" "C106" "C105" "C104"
"R70" "C103" "J19" "J18" "J17" "J16" "R69" "Q3" "R68" "U26" "R67" "R66"
"R65" "J15" "C102" "C101" "U25" "J14" "R64" "R63" "J13" "J12" "R62"
"R61" "C100" "FB4" "J11" "J10" "R60" "C99" "R59" "J9" "J8" "R58" "R57"
"R56" "R55" "J7" "R54" "C98" "R53" "R52" "R51" "Q2" "Q1" "R50" "R49"
"U24" "U23" "C97" "C96" "C95" "C94" "C93" "R48" "R47" "J6" "R46" "C92"
"R45" "U22" "J5" "R44" "R43" "R42" "C91" "FB3" "J4" "R41" "J3" "R40"
"C90" "R39" "U21" "U20" "C89" "C88" "C87" "C86" "C85" "C84" "C83" "C82"
"C81" "C80" "C79" "C78" "C77" "C76" "C75" "C74" "C73" "C72" "C71" "C70"
"C69" "C68" "R38" "R37" "C67" "C66" "C65" "U19" "C64" "C63" "C62" "U18"
"C61" "C60" "C59" "C58" "FB2" "J2" "FB1" "J1" "C57" "R36" "C55" "U17"
"C54" "R35" "C53" "R34" "C51" "U16" "C50" "R33" "C49" "R32" "C47" "U15"
"C46" "R31" "C44" "C43" "R30" "U14" "C42" "R29" "C40" "C39" "R28" "U13"
"C38" "R27" "C36" "C35" "R26" "U12" "C34" "R25" "C33" "C32" "R24" "U11"
"C30" "R23" "X2" "R22" "R21" "R20" "C29" "C28" "U10" "C27" "R19" "C26"
"C25" "U9" "R18" "R17" "R16" "R15" "R14" "R13" "R12" "R11" "C24" "C23"
"C22" "C21" "X1" "R10" "R9" "R8" "C20" "C19" "U8" "C18" "C17" "R7"
"C16" "U7" "C14" "R6" "C13" "U6" "C12" "C11" "R5" "U5" "C10" "C9" "R4"
"U4" "C8" "C7" "R3" "U3" "C6" "C5" "R2" "C4" "U2" "C3" "C2" "R1" "C1"
"U1")
So the recursion makes it less than half way through my list. I
suppose I could disable dont-check-duplicated-references, but it is
precisely these long part lists that make this feature useful. Does
anyone know of a work around?
Oliver
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user