version 1.20, 1999/11/25 00:54:22 |
version 1.21, 1999/11/30 22:19:50 |
|
|
*/ |
*/ |
|
|
#include <sys/types.h> |
#include <sys/types.h> |
|
#include <assert.h> |
#include <signal.h> |
#include <signal.h> |
#include <errno.h> |
#include <errno.h> |
#include <unistd.h> |
#include <unistd.h> |
|
|
} |
} |
|
|
/* |
/* |
* Look ahead (at most MAXCCHARS characters) for `token'. |
* Look ahead for `token'. |
* (on input `t == token[0]') |
* (on input `t == token[0]') |
* Used for comment and quoting delimiters. |
* Used for comment and quoting delimiters. |
* Returns 1 if `token' present; copied to output. |
* Returns 1 if `token' present; copied to output. |
|
|
{ |
{ |
int i; |
int i; |
|
|
if (t != token[0]) |
assert(t == token[0]); |
errx(1, "internal error"); |
|
|
|
for (i = 1; *++token; i++) { |
for (i = 1; *++token; i++) { |
t = gpbc(); |
t = gpbc(); |
|
|
} |
} |
|
|
else if (sp < 0 && LOOK_AHEAD(t, scommt)) { |
else if (sp < 0 && LOOK_AHEAD(t, scommt)) { |
int i; |
fputs(scommt, active); |
for (i = 0; i < MAXCCHARS && scommt[i]; i++) |
|
putc(scommt[i], active); |
|
|
|
for(;;) { |
for(;;) { |
t = gpbc(); |
t = gpbc(); |
if (LOOK_AHEAD(t, ecommt)) { |
if (LOOK_AHEAD(t, ecommt)) { |
for (i = 0; i < MAXCCHARS && ecommt[i]; |
fputs(ecommt, active); |
i++) |
|
putc(ecommt[i], active); |
|
break; |
break; |
} |
} |
if (t == EOF) |
if (t == EOF) |