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@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user