summaryrefslogtreecommitdiff
path: root/include/clang/Basic/DiagnosticParseKinds.td
diff options
context:
space:
mode:
authorDavid Majnemer <david.majnemer@gmail.com>2014-02-10 19:06:37 +0000
committerDavid Majnemer <david.majnemer@gmail.com>2014-02-10 19:06:37 +0000
commit4809f9bcd2f9b1473fa0d8b1db56cc6887ff814c (patch)
treee380e3fbc466701b1bb11f493d5a76fed574d3d3 /include/clang/Basic/DiagnosticParseKinds.td
parentd387ffe0387f0df0886482ccdb90f99b0199fcf4 (diff)
downloadclang-4809f9bcd2f9b1473fa0d8b1db56cc6887ff814c.tar.gz
clang-4809f9bcd2f9b1473fa0d8b1db56cc6887ff814c.tar.bz2
clang-4809f9bcd2f9b1473fa0d8b1db56cc6887ff814c.tar.xz
Basic: Clean up malformed pragma diagnostics
Create a new diagnostic, -Wignored-pragmas and use it to handle any case where a pragma would have a side effect but is ignored. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201102 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Basic/DiagnosticParseKinds.td')
-rw-r--r--include/clang/Basic/DiagnosticParseKinds.td42
1 files changed, 25 insertions, 17 deletions
diff --git a/include/clang/Basic/DiagnosticParseKinds.td b/include/clang/Basic/DiagnosticParseKinds.td
index ff76e959c3..b269313fce 100644
--- a/include/clang/Basic/DiagnosticParseKinds.td
+++ b/include/clang/Basic/DiagnosticParseKinds.td
@@ -763,32 +763,40 @@ def err_type_trait_arity : Error<
// Language specific pragmas
// - Generic warnings
def warn_pragma_expected_lparen : Warning<
- "missing '(' after '#pragma %0' - ignoring">;
+ "missing '(' after '#pragma %0' - ignoring">, InGroup<IgnoredPragmas>;
def warn_pragma_expected_rparen : Warning<
- "missing ')' after '#pragma %0' - ignoring">;
+ "missing ')' after '#pragma %0' - ignoring">, InGroup<IgnoredPragmas>;
def warn_pragma_expected_identifier : Warning<
- "expected identifier in '#pragma %0' - ignored">;
+ "expected identifier in '#pragma %0' - ignored">, InGroup<IgnoredPragmas>;
def warn_pragma_ms_struct : Warning<
- "incorrect use of '#pragma ms_struct on|off' - ignored">;
+ "incorrect use of '#pragma ms_struct on|off' - ignored">,
+ InGroup<IgnoredPragmas>;
def warn_pragma_extra_tokens_at_eol : Warning<
- "extra tokens at end of '#pragma %0' - ignored">;
+ "extra tokens at end of '#pragma %0' - ignored">,
+ InGroup<IgnoredPragmas>;
+def warn_pragma_expected_punc : Warning<
+ "expected ')' or ',' in '#pragma %0'">, InGroup<IgnoredPragmas>;
// - #pragma options
def warn_pragma_options_expected_align : Warning<
- "expected 'align' following '#pragma options' - ignored">;
+ "expected 'align' following '#pragma options' - ignored">,
+ InGroup<IgnoredPragmas>;
def warn_pragma_align_expected_equal : Warning<
- "expected '=' following '#pragma %select{align|options align}0' - ignored">;
+ "expected '=' following '#pragma %select{align|options align}0' - ignored">,
+ InGroup<IgnoredPragmas>;
def warn_pragma_align_invalid_option : Warning<
- "invalid alignment option in '#pragma %select{align|options align}0' - ignored">;
+ "invalid alignment option in '#pragma %select{align|options align}0' - ignored">,
+ InGroup<IgnoredPragmas>;
// - #pragma pack
def warn_pragma_pack_invalid_action : Warning<
- "unknown action for '#pragma pack' - ignored">;
+ "unknown action for '#pragma pack' - ignored">,
+ InGroup<IgnoredPragmas>;
def warn_pragma_pack_malformed : Warning<
- "expected integer or identifier in '#pragma pack' - ignored">;
+ "expected integer or identifier in '#pragma pack' - ignored">,
+ InGroup<IgnoredPragmas>;
// - #pragma unused
def warn_pragma_unused_expected_var : Warning<
- "expected '#pragma unused' argument to be a variable name">;
-def warn_pragma_unused_expected_punc : Warning<
- "expected ')' or ',' in '#pragma unused'">;
+ "expected '#pragma unused' argument to be a variable name">,
+ InGroup<IgnoredPragmas>;
// - #pragma fp_contract
def err_pragma_fp_contract_scope : Error<
"'#pragma fp_contract' can only appear at file scope or at the start of a "
@@ -808,11 +816,11 @@ def err_not_opencl_storage_class_specifier : Error<
// OpenCL EXTENSION pragma (OpenCL 1.1 [9.1])
def warn_pragma_expected_colon : Warning<
- "missing ':' after %0 - ignoring">;
+ "missing ':' after %0 - ignoring">, InGroup<IgnoredPragmas>;
def warn_pragma_expected_enable_disable : Warning<
- "expected 'enable' or 'disable' - ignoring">;
+ "expected 'enable' or 'disable' - ignoring">, InGroup<IgnoredPragmas>;
def warn_pragma_unknown_extension : Warning<
- "unknown OpenCL extension %0 - ignoring">;
+ "unknown OpenCL extension %0 - ignoring">, InGroup<IgnoredPragmas>;
def err_seh_expected_handler : Error<
"expected '__except' or '__finally' block">;
@@ -837,7 +845,7 @@ def err_omp_unknown_directive : Error <
def err_omp_unexpected_directive : Error <
"unexpected OpenMP directive '#pragma omp %0'">;
def err_omp_expected_punc : Error <
- "expected ',' or ')' in %select{'#pragma omp %1'|'%1' clause}0">;
+ "expected ',' or ')' in '%0' clause">;
def err_omp_unexpected_clause : Error <
"unexpected OpenMP clause '%0' in directive '#pragma omp %1'">;
def err_omp_more_one_clause : Error <