cpp.ansi: Add missing "#warning" directive
This commit is contained in:
parent
5c73826e4c
commit
b31c94cf32
@ -47,6 +47,7 @@ void do_if();
|
|||||||
void do_ifdef(int how);
|
void do_ifdef(int how);
|
||||||
void do_undef(char *argstr);
|
void do_undef(char *argstr);
|
||||||
void do_error();
|
void do_error();
|
||||||
|
void do_warning();
|
||||||
void do_line(unsigned int l);
|
void do_line(unsigned int l);
|
||||||
|
|
||||||
void macro_def(struct idf *id, char *text, int nformals, int length, int flags);
|
void macro_def(struct idf *id, char *text, int nformals, int length, int flags);
|
||||||
@ -145,6 +146,9 @@ void domacro()
|
|||||||
else
|
else
|
||||||
do_line((unsigned int)tk.tk_val);
|
do_line((unsigned int)tk.tk_val);
|
||||||
break;
|
break;
|
||||||
|
case K_WARNING: /* "warning" */
|
||||||
|
do_warning();
|
||||||
|
break;
|
||||||
case K_ERROR: /* "error" */
|
case K_ERROR: /* "error" */
|
||||||
do_error();
|
do_error();
|
||||||
break;
|
break;
|
||||||
@ -507,6 +511,17 @@ void do_undef(char *argstr)
|
|||||||
error("illegal #undef construction");
|
error("illegal #undef construction");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void do_warning()
|
||||||
|
{
|
||||||
|
int len;
|
||||||
|
char *get_text();
|
||||||
|
char *bp = get_text((char **) 0, &len);
|
||||||
|
|
||||||
|
warning("user warning: %s", bp);
|
||||||
|
free(bp);
|
||||||
|
LineNumber++;
|
||||||
|
}
|
||||||
|
|
||||||
void do_error()
|
void do_error()
|
||||||
{
|
{
|
||||||
int len;
|
int len;
|
||||||
|
|||||||
@ -26,6 +26,7 @@ struct mkey {
|
|||||||
{"else", K_ELSE},
|
{"else", K_ELSE},
|
||||||
{"endif", K_ENDIF},
|
{"endif", K_ENDIF},
|
||||||
{"error", K_ERROR},
|
{"error", K_ERROR},
|
||||||
|
{"warning", K_WARNING},
|
||||||
{"if", K_IF},
|
{"if", K_IF},
|
||||||
{"ifdef", K_IFDEF},
|
{"ifdef", K_IFDEF},
|
||||||
{"ifndef", K_IFNDEF},
|
{"ifndef", K_IFNDEF},
|
||||||
|
|||||||
@ -44,4 +44,5 @@ struct macro {
|
|||||||
#define K_LINE 10
|
#define K_LINE 10
|
||||||
#define K_PRAGMA 11
|
#define K_PRAGMA 11
|
||||||
#define K_UNDEF 12
|
#define K_UNDEF 12
|
||||||
|
#define K_WARNING 13
|
||||||
#define K_FILE 100 /* for dependency generator */
|
#define K_FILE 100 /* for dependency generator */
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user