Merge branch 'master' into magic-8.2

This commit is contained in:
Tim Edwards 2019-07-20 03:00:05 -04:00
commit d3e601c071
2 changed files with 21 additions and 4 deletions

View File

@ -17,9 +17,10 @@ defWrite.o: defWrite.c ../tcltk/tclmagic.h ../utils/magic.h \
../cif/cif.h ../extflat/extflat.h ../lef/lefInt.h ../drc/drc.h ../cif/cif.h ../extflat/extflat.h ../lef/lefInt.h ../drc/drc.h
lefRead.o: lefRead.c ../tcltk/tclmagic.h ../utils/magic.h \ lefRead.o: lefRead.c ../tcltk/tclmagic.h ../utils/magic.h \
../utils/geometry.h ../tiles/tile.h ../utils/hash.h ../utils/undo.h \ ../utils/geometry.h ../tiles/tile.h ../utils/hash.h ../utils/undo.h \
../database/database.h ../windows/windows.h ../graphics/graphics.h \ ../utils/utils.h ../database/database.h ../windows/windows.h \
../dbwind/dbwind.h ../utils/malloc.h ../textio/textio.h ../cif/cif.h \ ../graphics/graphics.h ../dbwind/dbwind.h ../utils/malloc.h \
../cif/CIFint.h ../cif/CIFread.h ../lef/lefInt.h ../textio/textio.h ../cif/cif.h ../cif/CIFint.h ../cif/CIFread.h \
../lef/lefInt.h
defRead.o: defRead.c ../tcltk/tclmagic.h ../utils/magic.h \ defRead.o: defRead.c ../tcltk/tclmagic.h ../utils/magic.h \
../utils/geometry.h ../tiles/tile.h ../utils/hash.h ../utils/undo.h \ ../utils/geometry.h ../tiles/tile.h ../utils/hash.h ../utils/undo.h \
../database/database.h ../windows/windows.h ../dbwind/dbwind.h \ ../database/database.h ../windows/windows.h ../dbwind/dbwind.h \

View File

@ -1392,7 +1392,7 @@ DefReadComponents(f, rootDef, sname, oscale, total)
CellDef *defMacro; CellDef *defMacro;
CellUse *defUse; CellUse *defUse;
Transform t; Transform t;
char *token; char *token, *dptr;
char usename[512]; char usename[512];
int keyword, subkey, values; int keyword, subkey, values;
int processed = 0; int processed = 0;
@ -1447,6 +1447,22 @@ DefReadComponents(f, rootDef, sname, oscale, total)
LefEndStatement(f); LefEndStatement(f);
break; break;
} }
/* Does use name contain brackets? If so, this can */
/* interfere with magic's use of arrays. */
/* NOTE: It is not clear that this needs to be */
/* done during DEF read. The only confusion comes */
/* from the arrays being parsed by ExtFlat when */
/* doing ext2spice. */
dptr = strchr(usename, '[');
if (dptr != NULL) {
*dptr = '_';
dptr = strchr(dptr + 1, ']');
if (dptr != NULL) *dptr = '_';
}
token = LefNextToken(f, TRUE); token = LefNextToken(f, TRUE);
/* Find the corresponding macro definition */ /* Find the corresponding macro definition */