Update bootstrap files.
This commit is contained in:
37
input.c
37
input.c
@@ -1,21 +1,31 @@
|
||||
|
||||
#line 919 "nuweb.w"
|
||||
#include "global.h"
|
||||
|
||||
#line 3914 "nuweb.w"
|
||||
static FILE *source_file; /* the current input file */
|
||||
static int double_at;
|
||||
static int include_depth;
|
||||
|
||||
#line 3921 "nuweb.w"
|
||||
static struct {
|
||||
FILE *file;
|
||||
char *name;
|
||||
int line;
|
||||
} stack[10];
|
||||
|
||||
#line 3938 "nuweb.w"
|
||||
|
||||
int source_peek;
|
||||
int source_last;
|
||||
int source_get()
|
||||
int source_get(void)
|
||||
{
|
||||
int c;
|
||||
source_last = c = source_peek;
|
||||
switch (c) {
|
||||
case EOF: {
|
||||
case EOF:
|
||||
#line 4088 "nuweb.w"
|
||||
{
|
||||
fclose(source_file);
|
||||
if (include_depth) {
|
||||
include_depth--;
|
||||
@@ -26,12 +36,16 @@ int source_get()
|
||||
c = source_get();
|
||||
}
|
||||
}
|
||||
#line 3946 "nuweb.w"
|
||||
|
||||
return c;
|
||||
case '\n': source_line++;
|
||||
default:
|
||||
if (c==nw_char)
|
||||
{
|
||||
/* Handle an ``at'' character */
|
||||
|
||||
#line 3985 "nuweb.w"
|
||||
{
|
||||
c = getc(source_file);
|
||||
if (double_at) {
|
||||
@@ -41,7 +55,9 @@ int source_get()
|
||||
}
|
||||
else
|
||||
switch (c) {
|
||||
case 'i': {
|
||||
case 'i':
|
||||
#line 4027 "nuweb.w"
|
||||
{
|
||||
char name[FILENAME_MAX];
|
||||
char fullname[FILENAME_MAX];
|
||||
struct incl * p = include_list;
|
||||
@@ -52,6 +68,8 @@ int source_get()
|
||||
exit(-1);
|
||||
}
|
||||
/* Collect include-file name */
|
||||
|
||||
#line 4067 "nuweb.w"
|
||||
{
|
||||
char *p = name;
|
||||
do
|
||||
@@ -68,6 +86,8 @@ int source_get()
|
||||
exit(-1);
|
||||
}
|
||||
}
|
||||
#line 4037 "nuweb.w"
|
||||
|
||||
stack[include_depth].file = source_file;
|
||||
fullname[0] = '\0';
|
||||
for (;;) {
|
||||
@@ -95,6 +115,8 @@ int source_get()
|
||||
source_peek = getc(source_file);
|
||||
c = source_get();
|
||||
}
|
||||
#line 3994 "nuweb.w"
|
||||
|
||||
break;
|
||||
case '#': case 'f': case 'm': case 'u': case 'v':
|
||||
case 'd': case 'o': case 'D': case 'O': case 's':
|
||||
@@ -125,12 +147,16 @@ int source_get()
|
||||
exit(-1);
|
||||
}
|
||||
}
|
||||
#line 3952 "nuweb.w"
|
||||
|
||||
return c;
|
||||
}
|
||||
source_peek = getc(source_file);
|
||||
return c;
|
||||
}
|
||||
}
|
||||
|
||||
#line 3969 "nuweb.w"
|
||||
void source_ungetc(int *c)
|
||||
{
|
||||
ungetc(source_peek, source_file);
|
||||
@@ -138,8 +164,9 @@ void source_ungetc(int *c)
|
||||
source_line--;
|
||||
source_peek=*c;
|
||||
}
|
||||
void source_open(name)
|
||||
char *name;
|
||||
|
||||
#line 4107 "nuweb.w"
|
||||
void source_open(char *name)
|
||||
{
|
||||
source_file = fopen(name, "r");
|
||||
if (!source_file) {
|
||||
|
Reference in New Issue
Block a user