diagnostics: %empty enables -Wempty-rule

* src/complain.h, src/complain.c (warning_is_unset): New.
* src/reader.c (grammar_current_rule_empty_set): If enabled -Wempty-rule,
if not disabled.
* tests/actions.at (Implicitly empty rule): Check this feature.
Also check that -Wno-empty-rule does disable this warning.
This commit is contained in:
Akim Demaille
2013-02-16 09:23:48 +01:00
parent f68a49ed49
commit 42d101da8d
4 changed files with 35 additions and 0 deletions

View File

@@ -101,6 +101,9 @@ typedef enum
Wall = ~complaint & ~fatal & ~silent
} warnings;
/** Whether the warnings of \a flags are all unset.
(Never enabled, never disabled). */
bool warning_is_unset (warnings flags);
/** Make a complaint, with maybe a location. */
void complain (location const *loc, warnings flags, char const *message, ...)