****************************************************************************** ********************* IBIS GOLDEN PARSER BUG REPORT FORM ********************* ****************************************************************************** INSTRUCTIONS To report a bug in the IBIS golden parser. Please fill out the top part of the following form and send the complete form to ibis-bug@eda.org. A list of reported bugs will be maintained on eda.org. ****************************************************************************** PARSER VERSION NUMBER: 5.0 PLATFORM (SPARC, HP700, PC, etc.): ALL OS AND VERSION: ALL REPORTED BY: Atul P Agarwal, Apt Software Avenues DATE: 21st Sept, 2012 DESCRIPTION OF BUG: The EBD error codes are overlapping leading to the following Message INTERNAL ERROR - Error code doesn't exist. INSERT IBIS FILE DEMONSTRATING THE BUG: |************************************************************************ | EBD file ebdtest.ebd | Apt Software Avenues Pvt Ltd |************************************************************************ | [IBIS ver] 3.1 [File name] ebdtest2.ebd [File Rev] 0.0 [Date] March 7, 1998 [Source] Hand generated [Notes] Just for testing the parser [Disclaimer] May not find all bugs in the parse [Copyright] Nobody | |************************************************************************ | Board Description Begin tests |************************************************************************ | ... orphan board description [Begin Board Description] | | ... orphan board description [Begin Board Description] ebd1 | | ... orphan board description [Begin Board Description] ThisIsAVeryVeryVeryVeryLongBoardComponentName | | ... empty board description [Begin Board Description] ebd2 [End Board Description] | |************************************************************************ | Manufacturer Keyword tests |************************************************************************ | ... test manufacturer [Begin Board Description] ebd2 [Manufacturer] [Manufacturer] nobody [End Board Description] | |************************************************************************ | Number of Pins tests |************************************************************************ | ... test number of pins [Begin Board Description] ebd3 [Manufacturer] nobody [Number Of Pins] [Number Of Pins] -1 [Number Of Pins] 0 [Number Of Pins] 2 [End Board Description] | |************************************************************************ | Pin List tests |************************************************************************ | ... test pin list [Begin Board Description] ebd4 [Manufacturer] nobody [Number Of Pins] 20 | | ... missing signal name [Pin List] | | ... junk after signal_name [Pin List] signal_name junk | | ... missing signal_name Pin1 | | ... repeated pin Pin1 GND | | .... long pin name LongPinName GND | | .... long signal_name Pin2 ThisIsAVeryVeryLongSignalName | | ... extra information after signal_name Pin3 POWER junk | Pin4 GND Pin5 POWER Pin6 NC Pin7 NA [End Board Description] | |************************************************************************ | Path Descriptor tests |************************************************************************ | ... Test path descriptors [Begin Board Description] ebd5 [Manufacturer] nobody [Number Of Pins] 9 | [Pin List] signal_name P1 signal1 P2 signal2 P3 signal3 P4 signal4 P5 signal5 P6 signal6 P7 signal7 P8 signal8 P9 signal9 | | ... missing path name [Path Description] | | ... very long path name [Path Description] ThisIsAVeryVeryVeryLongLongLongPathDescription | | ... miscellaneous tests [Path Description] Path1 NC Fork Endfork Pin Node / = Len R L C | | ... this should be OK [Path Description] Path3 Pin P2 Len=0/ Fork Len=0/ NC Endfork Node u10.11 NC | | ... this should be OK also [Path Description] Path4 Pin P3 Len=0/ Fork Len=0/ NC Endfork Node u10.11 NC | | ... check R/L/C sections [Path Description] Path4 Pin P3 | ... repeated params Len = 1 R=1 C=1p L=1p Len =1 R=1 C=1p L=1n / | | ... check case len=1 r=1 c=1p l=1n / | | ... invalid token Len=0 abcd=2.1 / | | ... Len has to be specified R=1 C=1p L=1n / | | ... Len before R/L/C R=1 Len=1 C=1p L=1p / R=1 C=1p Len=1 L=1p / R=1 C=1p L=1p Len=1 / | | ... Number formats Len=0.12.12 R=-12 C=E12 L=1.2E2.3 / | | ... Missing / Len=1 C=1p L=1n | | ... L and C must be specifed when Len != 0 Len= 1/ | | ... test various Fork conditions. these should be OK [Path Description] Path5 Pin P4 Len = 0 / Fork Len = 0 / Fork Len = 0/ Pin P5 Node u10.12 Endfork Endfork | | ... test various Fork conditions [Path Description] Path6 Pin P6 Endfork Fork Len=0/ | | ... test Node param [Path Description] Path7 Pin P7 Node junk Node AVeryLongReferenceDesignator.pin Node u10.AVeryLongPinName | | ... test NC [Path Description] Path8 Pin P8 NC Pin P9 Len=0/ NC Len = 0/ Pin P9 Fork NC Len=0/ Endfork Fork Fork NC Endfork Endfork NC Len=0/ | | [End Board Description] |************************************************************************ | Reference Maps tests |************************************************************************ | ... Test reference designator maps [Begin Board Description] ebd6 [Manufacturer] nobody [Number Of Pins] 1 | [Pin List] signal_name Pin1 signal1 | [Path Description] Path1 Pin Pin1 Len=0/ Fork Len =0 / Endfork Len = 1 L=1n C=1p/ Node u10.10 Node u11.10 Node u12.10 Node u13.10 Node u14.10 Node u15.10 Node u16.10 Node u17.10 Node u18.10 Node u19.10 Node u20.10 Node u21.10 Node u21.Pin1 Node u22.10 Node u22.P1 Node u23.10 Node u24.10 Node u24.Pin1 Node u25.10 Node u26.10 Node u26.Pin1 Node u27.10 [Reference Designator Map] | .... test miscellaneous conditions u10 u10 u11 a.ibs u12 a component name u13 b.b component name u14 a.b.c component name u15 ab.pkg component name u16 a/ab.pkg component name u17 a/ab.IBS component name u18 a\ab.IBS component name uLongLongLongLong a.ibs component name u19 a.ibs Long component name has been specified here | | ... file does not exist u20 a.ibs Component | | .... trying to reference the component being defined u21 ebdtest2.ebd ebd6 | | .... reference another existing component in the same file u22 ebdtest2.ebd ebd5 | | .... reference another non existing component in the same file u23 ebdtest2.ebd ebd10 | | .... reference an existing component in an ibs file u24 ebdtest2.ibs ebdtest1 | | .... reference a non existing component in an ibs file u25 ebdtest2.ibs ebdtest2 | | .... reference an existing component in an ebd file u26 ebdtest1.ebd dummy | | .... reference a non existing component in an ebd file u27 ebdtest1.ebd dummy2 | | .... reference an existing component in an ebd file which has a recursive | .... reference to the calling file u28 ebdtest1.ebd dummy1 | [End Board Description] | | ... added the following tests for ibischk3.02 [Begin Board Description] ebdx [Manufacturer] nobody [Number Of Pins] 1 | [Pin List] signal_name Pin1 signal1 | [Path Description] Path1 Pin Pin1 Len 3 / | | for this reference designator, the pin should be 5 characters max | since it refers to an ibs file Node u11.12345678 Node u12.12345678 | [Reference Designator Map] u11 ebdtest.ibs abcdefg u12 ebdtest1.ebd dummy1 [End Board Description] [End] ****************************************************************************** ******************** BELOW FOR ADMINISTRATION AND TRACKING ******************* ****************************************************************************** BUG NUMBER: 136 SEVERITY: [FATAL, SEVERE, MODERATE, ANNOYING, ENHANCEMENT] MODERATE PRIORITY: [HIGH, MEDIUM, LOW] MEDIUM STATUS: [OPEN, CLOSED, WILL NOT FIX, NOT A BUG] CLOSED FIXED VERSION: 5.1.0 FIXED DATE: September 26, 2012 NOTES ON BUG FIX: Classified at the IBIS Open Forum teleconference on October 5, 2012. Fixed in Version 5.1.0. ****************************************************************************** ******************************************************************************