Skip to content

Commit ac25849

Browse files
committed
Add DiagnosticGroup for installapi warnings
1 parent d45081b commit ac25849

File tree

2 files changed

+11
-7
lines changed

2 files changed

+11
-7
lines changed

clang/include/clang/Basic/DiagnosticGroups.td

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1508,3 +1508,7 @@ def ReadOnlyPlacementChecks : DiagGroup<"read-only-types">;
15081508
// Warnings and fixes to support the "safe buffers" programming model.
15091509
def UnsafeBufferUsageInContainer : DiagGroup<"unsafe-buffer-usage-in-container">;
15101510
def UnsafeBufferUsage : DiagGroup<"unsafe-buffer-usage", [UnsafeBufferUsageInContainer]>;
1511+
1512+
// Warnings and notes InstallAPI verification.
1513+
def InstallAPIViolation : DiagGroup<"installapi-violation">;
1514+

clang/include/clang/Basic/DiagnosticInstallAPIKinds.td

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,22 +18,22 @@ def err_no_output_file: Error<"no output file specified">;
1818
} // end of command line category.
1919

2020
let CategoryName = "Verification" in {
21-
def warn_target: Warning<"violations found for %0">;
21+
def warn_target: Warning<"violations found for %0">, InGroup<InstallAPIViolation>;
2222
def err_library_missing_symbol : Error<"declaration has external linkage, but dynamic library doesn't have symbol '%0'">;
23-
def warn_library_missing_symbol : Warning<"declaration has external linkage, but dynamic library doesn't have symbol '%0'">;
23+
def warn_library_missing_symbol : Warning<"declaration has external linkage, but dynamic library doesn't have symbol '%0'">, InGroup<InstallAPIViolation>;
2424
def err_library_hidden_symbol : Error<"declaration has external linkage, but symbol has internal linkage in dynamic library '%0'">;
25-
def warn_library_hidden_symbol : Warning<"declaration has external linkage, but symbol has internal linkage in dynamic library '%0'">;
26-
def warn_header_hidden_symbol : Warning<"symbol exported in dynamic library, but marked hidden in declaration '%0'">;
25+
def warn_library_hidden_symbol : Warning<"declaration has external linkage, but symbol has internal linkage in dynamic library '%0'">, InGroup<InstallAPIViolation>;
26+
def warn_header_hidden_symbol : Warning<"symbol exported in dynamic library, but marked hidden in declaration '%0'">, InGroup<InstallAPIViolation>;
2727
def err_header_hidden_symbol : Error<"symbol exported in dynamic library, but marked hidden in declaration '%0'">;
2828
def err_header_symbol_missing : Error<"no declaration found for exported symbol '%0' in dynamic library">;
2929
def warn_header_availability_mismatch : Warning<"declaration '%0' is marked %select{available|unavailable}1,"
30-
" but symbol is %select{not |}2exported in dynamic library">;
30+
" but symbol is %select{not |}2exported in dynamic library">, InGroup<InstallAPIViolation>;
3131
def err_header_availability_mismatch : Error<"declaration '%0' is marked %select{available|unavailable}1,"
3232
" but symbol is %select{not |}2exported in dynamic library">;
3333
def warn_dylib_symbol_flags_mismatch : Warning<"dynamic library symbol '%0' is "
34-
"%select{weak defined|thread local}1, but its declaration is not">;
34+
"%select{weak defined|thread local}1, but its declaration is not">, InGroup<InstallAPIViolation>;
3535
def warn_header_symbol_flags_mismatch : Warning<"declaration '%0' is "
36-
"%select{weak defined|thread local}1, but symbol is not in dynamic library">;
36+
"%select{weak defined|thread local}1, but symbol is not in dynamic library">, InGroup<InstallAPIViolation>;
3737
def err_dylib_symbol_flags_mismatch : Error<"dynamic library symbol '%0' is "
3838
"%select{weak defined|thread local}1, but its declaration is not">;
3939
def err_header_symbol_flags_mismatch : Error<"declaration '%0' is "

0 commit comments

Comments
 (0)