diff options
author | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1993-07-07 22:59:22 +0000 |
---|---|---|
committer | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1993-07-07 22:59:22 +0000 |
commit | 0de352cfbc0f3d0fca0595075136e2872f7925d4 (patch) | |
tree | ef96f83bc45b6798be6e91bcd5bca65688f91bc8 /gcc/c-parse.in | |
parent | 419c1004674cab0a63ad42073887ecbc23a79f19 (diff) | |
download | gcc-0de352cfbc0f3d0fca0595075136e2872f7925d4.tar.gz |
(simple_if): Save stmt_count, and print empty body
warning here.
(if_prefix): Don't save stmt_count here.
(stmt): Don't print empty body warning here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@4880 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-parse.in')
-rw-r--r-- | gcc/c-parse.in | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/gcc/c-parse.in b/gcc/c-parse.in index 81450fb8799..a62e29200d1 100644 --- a/gcc/c-parse.in +++ b/gcc/c-parse.in @@ -1543,7 +1543,12 @@ compstmt: '{' '}' /* Value is number of statements counted as of the closeparen. */ simple_if: - if_prefix lineno_labeled_stmt + if_prefix + { $<itype>1 = stmt_count; } + lineno_labeled_stmt + { if (extra_warnings && stmt_count == $<itype>1) + warning_with_file_and_line (if_stmt_file, if_stmt_line, + "empty body in an if-statement"); } /* Make sure expand_end_cond is run once for each call to expand_start_cond. Otherwise a crash is likely. */ @@ -1554,7 +1559,6 @@ if_prefix: IF '(' expr ')' { emit_line_note ($<filename>-1, $<lineno>0); expand_start_cond (truthvalue_conversion ($3), 0); - $<itype>1 = stmt_count; if_stmt_file = $<filename>-1; if_stmt_line = $<lineno>0; position_after_white_space (); } @@ -1629,10 +1633,7 @@ stmt: if (extra_warnings && stmt_count == $<itype>1) warning ("empty body in an else-statement"); } | simple_if %prec IF - { expand_end_cond (); - if (extra_warnings && stmt_count == $<itype>1) - warning_with_file_and_line (if_stmt_file, if_stmt_line, - "empty body in an if-statement"); } + { expand_end_cond (); } /* Make sure expand_end_cond is run once for each call to expand_start_cond. Otherwise a crash is likely. */ |