Merge branch 'master' into netgen-1.5
This commit is contained in:
commit
c0f7ebd625
|
|
@ -1948,6 +1948,33 @@ PrematchLists(char *name1, int file1, char *name2, int file2)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Do NOT remove shorting devices that */
|
||||||
|
/* connect two ports. Otherwise the */
|
||||||
|
/* port lists get screwed up. It is */
|
||||||
|
/* better in that case to force the */
|
||||||
|
/* cells to be declared mismatched. */
|
||||||
|
/* This is ignored for a top-level cell */
|
||||||
|
/* because it will just show up as a */
|
||||||
|
/* port mismatch error as it should. */
|
||||||
|
|
||||||
|
if (!(tc1->flags & CELL_TOP) &&
|
||||||
|
(ecomp->cell1->class != CLASS_ISOURCE)) {
|
||||||
|
int found1 = FALSE;
|
||||||
|
int found2 = FALSE;
|
||||||
|
for (ob2 = tc1->cell; ob2; ob2 = ob2->next) {
|
||||||
|
if (!IsPort(ob2)) break;
|
||||||
|
else if (ob2->node == node1)
|
||||||
|
found1 = TRUE;
|
||||||
|
else if (ob2->node == node2)
|
||||||
|
found2 = TRUE;
|
||||||
|
if (found1 && found2) {
|
||||||
|
found = FALSE;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (found) break;
|
if (found) break;
|
||||||
}
|
}
|
||||||
if (found) {
|
if (found) {
|
||||||
|
|
|
||||||
|
|
@ -611,7 +611,8 @@ void SpiceTokNoNewline(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*----------------------------------------------------------------------*/
|
/*----------------------------------------------------------------------*/
|
||||||
/* Skip to the next token, ignoring any C-style comments. */
|
/* Skip to the next token, ignoring any C-style comments and verilog */
|
||||||
|
/* "(* ... *)"-style comments. */
|
||||||
/*----------------------------------------------------------------------*/
|
/*----------------------------------------------------------------------*/
|
||||||
|
|
||||||
void SkipTokComments(char *delimiter)
|
void SkipTokComments(char *delimiter)
|
||||||
|
|
@ -627,6 +628,11 @@ void SkipTokComments(char *delimiter)
|
||||||
SkipTok(delimiter);
|
SkipTok(delimiter);
|
||||||
if (nexttok) SkipTok(delimiter);
|
if (nexttok) SkipTok(delimiter);
|
||||||
}
|
}
|
||||||
|
else if (match(nexttok, "(*")) {
|
||||||
|
while (nexttok && !match(nexttok, "*)"))
|
||||||
|
SkipTok(delimiter);
|
||||||
|
if (nexttok) SkipTok(delimiter);
|
||||||
|
}
|
||||||
else break;
|
else break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -731,7 +737,7 @@ char *strdtok(char *pstring, char *delim1, char *delim2)
|
||||||
if (*s == '\\') {
|
if (*s == '\\') {
|
||||||
s++;
|
s++;
|
||||||
while (*s != '\0') {
|
while (*s != '\0') {
|
||||||
if ((*s == ' ') || (*s == '\\')) {
|
if ((*s == ' ') || ((*s == '\\') && (*(s + 1) == '\0'))) {
|
||||||
s++;
|
s++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue