****************************************************************************** ********************* 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 info@ibis.org. A list of reported bugs is maintained at http://ibis.org/bugs/ibischk/ . ****************************************************************************** PARSER VERSION NUMBER: 7.1.0 PLATFORM (SPARC, HP700, PC, etc.): ALL OS AND VERSION: ALL REPORTED BY: Yingxin Sun, Cadence Design Systems DATE: April 17, 2022 DESCRIPTION OF BUG: When the ibischk701 parser is embedded in an EDA tool, and a .ibs file is positioned in an absolute path, unexpected Errors occur. File paths should be relative For example: ERROR - File Name 'C:\debug\bug232.ibs' has an illegal character with ASCII code 58 | if this problem exists ERROR - File Name 'C:\debug\bug232.ibs' has an absolute path. File paths should be relative. After a trace into the source codes, I found starting from line 80 in file main.c. if( geFileVersion >= VER_7 ) { char *ptr; char cPathDelimiter; #if (IBIS_OS == IBIS_OS_DOS) || (IBIS_OS == IBIS_OS_WIN31) || (IBIS_OS == IBIS_OS_WIN95) || (IBIS_OS == IBIS_OS_WINNT) cPathDelimiter = '\\'; #else cPathDelimiter = '/'; #endif ptr = strrchr(sFileName, cPathDelimiter); if( !ptr ) ptr = sFileName; else ptr++; CMN_checkFileNameWithNewRules(sFileName, eType); } ---- On the last line above, CMN_checkFileNameWithNewRules(sFileName, eType), sFileName should be ptr. ---- Also, there may be another problem: The value of the global variable geFileVersion may not be correct at this moment because the ibis file is not parsed yet. The value is the old one in history if more than two files are parsed without exiting. BUG232 only occurs when the file is [IBIS Ver] 7.0 or 7.1. ***************************************************************************** INSERT IBIS FILE DEMONSTRATING THE BUG: The test case needs to be positioned under an absolute path: ---------- bug232.ibs ---------- |*************************************************************************** | [IBIS Ver] 7.0 [File name] bug232.ibs [File Rev] 2.13 [Date] 08/09/95 [Source] Dummy File. [Notes] File used to test (EDA tool - specific) absolute path error | |**************************************************************************** | [Component] BUG232 [Manufacturer] Company [Package] | typ min max R_pkg 0.0 NA NA L_pkg 0.0 NA NA C_pkg 0.0 NA NA | [Pin] signal_name model_name R_pin L_pin C_pin | 1 NC NC 32 VCC POWER | |**************************************************************************** [End] ****************************************************************************** ******************** BELOW FOR ADMINISTRATION AND TRACKING ******************* ****************************************************************************** BUG NUMBER: 232 SEVERITY: [FATAL, SEVERE, MODERATE, ANNOYING, ENHANCEMENT] MODERATE PRIORITY: [HIGH, MEDIUM, LOW] MEDIUM STATUS: [OPEN, CLOSED, WILL NOT FIX, NOT A BUG] CLOSED FIXED VERSION: 7.1.1 FIXED DATE: November 18, 2022 NOTES ON BUG FIX: Classified at the May 13, 2022 IBIS Open Forum. To be fixed in the next release. The suggestion is to correct a coding error listed in this report ****************************************************************************** ******************************************************************************