diff --git a/ext2sim/ext2sim.c b/ext2sim/ext2sim.c index 33d276fa..5d9de91f 100644 --- a/ext2sim/ext2sim.c +++ b/ext2sim/ext2sim.c @@ -175,13 +175,13 @@ typedef struct _devMerge { Dev * dev; int esFMIndex; const HierName *hierName; - struct _devMerge *next; + const struct _devMerge *next; } devMerge; #ifdef EXT2SIM_AUTO -devMerge *devMergeList = NULL ; +const devMerge *devMergeList = NULL; #else -extern devMerge *devMergeList; +extern const devMerge *devMergeList; #endif /* attributes controlling the Area/Perimeter extraction of fet terminals */ @@ -679,13 +679,13 @@ runexttosim: if (esMergeDevsA || esMergeDevsC) { - devMerge *p; + const devMerge *p; EFVisitDevs(simmergeVisit, PTR2CD(NULL)); TxPrintf("Devices merged: %d\n", esDevsMerged); esFMIndex = 0; for (p = devMergeList; p != NULL; p = p->next) - freeMagic(p); + freeMagic((char *)p); devMergeList = NULL; } @@ -808,12 +808,12 @@ main( EFFlatBuild(inName, flatFlags); if (esMergeDevsA || esMergeDevsC) { - devMerge *p; + const devMerge *p; EFVisitDevs(simmergeVisit, PTR2CD(NULL)); TxPrintf("Devices merged: %d\n", esDevsMerged); esFMIndex = 0; - for (p = devMergeList; p != NULL; p = p->next) freeMagic(p); + for (p = devMergeList; p != NULL; p = p->next) freeMagic((char *)p); } EFVisitDevs(simdevVisit, PTR2CD(NULL)); @@ -1797,7 +1797,8 @@ simmergeVisit( const EFNode *subnode, *snode, *dnode, *gnode; int pmode, l, w; float m; - devMerge *fp, *cfp; + devMerge *fp; + const devMerge *cfp; const HierName *hierName = hc->hc_hierName; if (dev->dev_nterm < 2) { @@ -1842,7 +1843,7 @@ simmergeVisit( setDevMult(fp->esFMIndex, DEV_KILLED); setDevMult(cfp->esFMIndex, m); esDevsMerged++; - freeMagic(fp); + freeMagic((char *)fp); return 0; } } diff --git a/ext2spice/ext2hier.c b/ext2spice/ext2hier.c index 7f090516..681cd77d 100644 --- a/ext2spice/ext2hier.c +++ b/ext2spice/ext2hier.c @@ -1156,7 +1156,8 @@ spcdevHierMergeVisit(hc, dev, scale) DevTerm *gate, *source, *drain; EFNode *subnode, *snode, *dnode, *gnode; int pmode, l, w; - devMerge *fp, *cfp; + devMerge *fp; + const devMerge *cfp; float m; /* If no terminals, or only a gate, can't do much of anything */ @@ -1564,7 +1565,8 @@ devMergeHierVisit(hc, dev, scale) EFNode *subnode, *snode, *dnode, *gnode; int pmode, l, w; bool hS, hD, chS, chD; - devMerge *fp, *cfp; + devMerge *fp; + const devMerge *cfp; float m; if (esDistrJunct) @@ -2179,13 +2181,13 @@ esHierVisit(hc, cdata) /* Merge devices */ if (esMergeDevsA || esMergeDevsC) { - devMerge *p; + const devMerge *p; EFHierVisitDevs(hcf, spcdevHierMergeVisit, (ClientData)NULL); TxPrintf("Devs merged: %d\n", esSpiceDevsMerged); esFMIndex = 0; for (p = devMergeList; p != NULL; p = p->next) - freeMagic(p); + freeMagic((char *)p); devMergeList = NULL; } else if (esDistrJunct) diff --git a/ext2spice/ext2spice.c b/ext2spice/ext2spice.c index e12ae596..11d8c728 100644 --- a/ext2spice/ext2spice.c +++ b/ext2spice/ext2spice.c @@ -112,7 +112,7 @@ int esFMIndex = 0; /* current index to it */ int esFMSize = FMULT_SIZE ; /* its current size (growable) */ int esSpiceDevsMerged; -devMerge *devMergeList = NULL ; +const devMerge *devMergeList = NULL ; #define atoCap(s) ((EFCapValue)atof(s)) @@ -1106,13 +1106,13 @@ runexttospice: if (esMergeDevsA || esMergeDevsC) { - devMerge *p; + const devMerge *p; EFVisitDevs(devMergeVisit, (ClientData) NULL); TxPrintf("Devs merged: %d\n", esSpiceDevsMerged); esFMIndex = 0; for (p = devMergeList; p != NULL; p = p->next) - freeMagic(p); + freeMagic((char *) p); devMergeList = NULL; } else if (esDistrJunct) @@ -1287,9 +1287,9 @@ main(argc, argv) TxPrintf("Devs merged: %d\n", esSpiceDevsMerged); esFMIndex = 0 ; { - devMerge *p; + const devMerge *p; - for ( p = devMergeList ; p != NULL ; p=p->next ) freeMagic(p); + for ( p = devMergeList ; p != NULL ; p=p->next ) freeMagic((char *)p); } } else if ( esDistrJunct ) EFVisitDevs(devDistJunctVisit, (ClientData) NULL); @@ -4291,7 +4291,8 @@ devMergeVisit(dev, hc, scale, trans) EFNode *subnode, *snode, *dnode, *gnode; int pmode, l, w; bool hS, hD, chS, chD; - devMerge *fp, *cfp; + devMerge *fp; + const devMerge *cfp; float m; HierName *hierName = hc->hc_hierName; diff --git a/ext2spice/ext2spice.h b/ext2spice/ext2spice.h index 7e813b7c..894724e9 100644 --- a/ext2spice/ext2spice.h +++ b/ext2spice/ext2spice.h @@ -13,7 +13,7 @@ typedef struct _devMerge { Dev * dev; int esFMIndex; HierName *hierName; - struct _devMerge *next; + const struct _devMerge *next; } devMerge; /* Forward declarations */ @@ -89,7 +89,7 @@ extern int esFMIndex; /* current index to it */ extern int esFMSize; /* its current size (growable) */ extern int esSpiceDevsMerged; -extern devMerge *devMergeList; +extern const devMerge *devMergeList; /* * The following hash table and associated functions are used only if