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_undef(char *argstr);
|
||||
void do_error();
|
||||
void do_warning();
|
||||
void do_line(unsigned int l);
|
||||
|
||||
void macro_def(struct idf *id, char *text, int nformals, int length, int flags);
|
||||
@ -145,6 +146,9 @@ void domacro()
|
||||
else
|
||||
do_line((unsigned int)tk.tk_val);
|
||||
break;
|
||||
case K_WARNING: /* "warning" */
|
||||
do_warning();
|
||||
break;
|
||||
case K_ERROR: /* "error" */
|
||||
do_error();
|
||||
break;
|
||||
@ -507,6 +511,17 @@ void do_undef(char *argstr)
|
||||
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()
|
||||
{
|
||||
int len;
|
||||
|
||||
@ -26,6 +26,7 @@ struct mkey {
|
||||
{"else", K_ELSE},
|
||||
{"endif", K_ENDIF},
|
||||
{"error", K_ERROR},
|
||||
{"warning", K_WARNING},
|
||||
{"if", K_IF},
|
||||
{"ifdef", K_IFDEF},
|
||||
{"ifndef", K_IFNDEF},
|
||||
|
||||
@ -44,4 +44,5 @@ struct macro {
|
||||
#define K_LINE 10
|
||||
#define K_PRAGMA 11
|
||||
#define K_UNDEF 12
|
||||
#define K_WARNING 13
|
||||
#define K_FILE 100 /* for dependency generator */
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user