1//==--- DiagnosticDriverKinds.td - libdriver diagnostics ------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9let Component = "Driver" in {
10
11def err_drv_no_such_file : Error<"no such file or directory: '%0'">;
12def err_drv_no_such_file_with_suggestion : Error<
13  "no such file or directory: '%0'; did you mean '%1'?">;
14def err_drv_unsupported_opt : Error<"unsupported option '%0'">;
15def err_drv_unsupported_opt_with_suggestion : Error<
16  "unsupported option '%0'; did you mean '%1'?">;
17def err_drv_unsupported_opt_for_target : Error<
18  "unsupported option '%0' for target '%1'">;
19def err_drv_unsupported_opt_for_language_mode : Error<
20  "unsupported option '%0' for language mode '%1'">;
21def err_drv_unsupported_option_argument : Error<
22  "unsupported argument '%1' to option '%0'">;
23def err_drv_unknown_stdin_type : Error<
24  "-E or -x required when input is from standard input">;
25def err_drv_unknown_stdin_type_clang_cl : Error<
26  "use /Tc or /Tp to set input type for standard input">;
27def err_drv_unknown_language : Error<"language not recognized: '%0'">;
28def err_drv_invalid_arch_name : Error<
29  "invalid arch name '%0'">;
30def err_drv_invalid_riscv_arch_name : Error<
31  "invalid arch name '%0', %1">;
32def err_drv_invalid_riscv_ext_arch_name : Error<
33  "invalid arch name '%0', %1 '%2'">;
34def warn_drv_invalid_arch_name_with_suggestion : Warning<
35  "ignoring invalid /arch: argument '%0'; for %select{64|32}1-bit expected one of %2">,
36  InGroup<UnusedCommandLineArgument>;
37def warn_drv_avr_mcu_not_specified : Warning<
38  "no target microcontroller specified on command line, cannot "
39  "link standard libraries, please pass -mmcu=<mcu name>">,
40  InGroup<AVRRtlibLinkingQuirks>;
41def warn_drv_avr_gcc_not_found: Warning<
42  "no avr-gcc installation can be found on the system, "
43  "cannot link standard libraries">,
44  InGroup<AVRRtlibLinkingQuirks>;
45def warn_drv_avr_libc_not_found: Warning<
46  "no avr-libc installation can be found on the system, "
47  "cannot link standard libraries">,
48  InGroup<AVRRtlibLinkingQuirks>;
49def warn_drv_avr_family_linking_stdlibs_not_implemented: Warning<
50  "support for linking stdlibs for microcontroller '%0' is not implemented">,
51  InGroup<AVRRtlibLinkingQuirks>;
52def warn_drv_avr_linker_section_addresses_not_implemented: Warning<
53  "support for passing the data section address to the linker for "
54  "microcontroller '%0' is not implemented">,
55  InGroup<AVRRtlibLinkingQuirks>;
56def warn_drv_avr_stdlib_not_linked: Warning<
57  "standard library not linked and so no interrupt vector table or "
58  "compiler runtime routines will be linked">,
59  InGroup<AVRRtlibLinkingQuirks>;
60def err_drv_cuda_bad_gpu_arch : Error<"unsupported CUDA gpu architecture: %0">;
61def err_drv_no_cuda_installation : Error<
62  "cannot find CUDA installation; provide its path via '--cuda-path', or pass "
63  "'-nocudainc' to build without CUDA includes">;
64def err_drv_no_cuda_libdevice : Error<
65  "cannot find libdevice for %0; provide path to different CUDA installation "
66  "via '--cuda-path', or pass '-nocudalib' to build without linking with "
67  "libdevice">;
68
69def err_drv_no_rocm_device_lib : Error<
70  "cannot find ROCm device library%select{| for %1}0; provide its path via "
71  "'--rocm-path' or '--rocm-device-lib-path', or pass '-nogpulib' to build "
72  "without ROCm device library">;
73def err_drv_no_hip_runtime : Error<
74  "cannot find HIP runtime; provide its path via '--rocm-path', or pass "
75  "'-nogpuinc' to build without HIP runtime">;
76
77def err_drv_undetermined_amdgpu_arch : Error<
78  "cannot determine AMDGPU architecture: %0; consider passing it via "
79  "'--march'">;
80def err_drv_cuda_version_unsupported : Error<
81  "GPU arch %0 is supported by CUDA versions between %1 and %2 (inclusive), "
82  "but installation at %3 is %4; use '--cuda-path' to specify a different CUDA "
83  "install, pass a different GPU arch with '--cuda-gpu-arch', or pass "
84  "'--no-cuda-version-check'">;
85def warn_drv_new_cuda_version: Warning<
86  "CUDA version%0 is newer than the latest%select{| partially}1 supported version %2">,
87  InGroup<CudaUnknownVersion>;
88def warn_drv_partially_supported_cuda_version: Warning<
89  "CUDA version %0 is only partially supported">,
90  InGroup<CudaUnknownVersion>;
91def err_drv_cuda_host_arch : Error<
92  "unsupported architecture '%0' for host compilation">;
93def err_drv_mix_cuda_hip : Error<
94  "mixed CUDA and HIP compilation is not supported">;
95def err_drv_bad_target_id : Error<
96  "invalid target ID '%0'; format is a processor name followed by an optional "
97  "colon-delimited list of features followed by an enable/disable sign (e.g., "
98  "'gfx908:sramecc+:xnack-')">;
99def err_drv_bad_offload_arch_combo : Error<
100  "invalid offload arch combinations: '%0' and '%1' (for a specific processor, "
101  "a feature should either exist in all offload archs, or not exist in any "
102  "offload archs)">;
103def err_drv_invalid_thread_model_for_target : Error<
104  "invalid thread model '%0' in '%1' for this target">;
105def err_drv_invalid_linker_name : Error<
106  "invalid linker name in argument '%0'">;
107def err_drv_invalid_rtlib_name : Error<
108  "invalid runtime library name in argument '%0'">;
109def err_drv_unsupported_rtlib_for_platform : Error<
110  "unsupported runtime library '%0' for platform '%1'">;
111def err_drv_invalid_unwindlib_name : Error<
112  "invalid unwind library name in argument '%0'">;
113def err_drv_incompatible_unwindlib : Error<
114  "--rtlib=libgcc requires --unwindlib=libgcc">;
115def err_drv_invalid_stdlib_name : Error<
116  "invalid library name in argument '%0'">;
117def err_drv_invalid_output_with_multiple_archs : Error<
118  "cannot use '%0' output with multiple -arch options">;
119def err_drv_no_input_files : Error<"no input files">;
120def err_drv_use_of_Z_option : Error<
121  "unsupported use of internal gcc -Z option '%0'">;
122def err_drv_output_argument_with_multiple_files : Error<
123  "cannot specify -o when generating multiple output files">;
124def err_drv_out_file_argument_with_multiple_sources : Error<
125  "cannot specify '%0%1' when compiling multiple source files">;
126def err_no_external_assembler : Error<
127  "there is no external assembler that can be used on this platform">;
128def err_drv_unable_to_remove_file : Error<
129  "unable to remove file: %0">;
130def err_drv_unable_to_set_working_directory : Error <
131  "unable to set working directory: %0">;
132def err_drv_command_failure : Error<
133  "unable to execute command: %0">;
134def err_drv_invalid_darwin_version : Error<
135  "invalid Darwin version number: %0">;
136def err_drv_invalid_diagnotics_hotness_threshold : Error<
137  "invalid argument in '%0', only integer or 'auto' is supported">;
138def err_drv_missing_argument : Error<
139  "argument to '%0' is missing (expected %1 value%s1)">;
140def err_drv_invalid_Xarch_argument_with_args : Error<
141  "invalid Xarch argument: '%0', options requiring arguments are unsupported">;
142def err_drv_Xopenmp_target_missing_triple : Error<
143  "cannot deduce implicit triple value for -Xopenmp-target, specify triple using -Xopenmp-target=<triple>">;
144def err_drv_invalid_Xopenmp_target_with_args : Error<
145  "invalid -Xopenmp-target argument: '%0', options requiring arguments are unsupported">;
146def err_drv_argument_only_allowed_with : Error<
147  "invalid argument '%0' only allowed with '%1'">;
148def err_drv_minws_unsupported_input_type : Error<
149  "'-fminimize-whitespace' invalid for input of type %0">;
150def err_drv_amdgpu_ieee_without_no_honor_nans : Error<
151  "invalid argument '-mno-amdgpu-ieee' only allowed with relaxed NaN handling">;
152def err_drv_argument_not_allowed_with : Error<
153  "invalid argument '%0' not allowed with '%1'">;
154def err_drv_invalid_version_number : Error<
155  "invalid version number in '%0'">;
156def err_drv_no_linker_llvm_support : Error<
157  "'%0': unable to pass LLVM bit-code files to linker">;
158def err_drv_no_ast_support : Error<
159  "'%0': unable to use AST files with this tool">;
160def err_drv_no_module_support : Error<
161  "'%0': unable to use module files with this tool">;
162def err_drv_clang_unsupported : Error<
163  "the clang compiler does not support '%0'">;
164def err_drv_clang_unsupported_opt_cxx_darwin_i386 : Error<
165  "the clang compiler does not support '%0' for C++ on Darwin/i386">;
166def err_drv_clang_unsupported_opt_pg_darwin: Error<
167  "the clang compiler does not support -pg option on %select{Darwin|versions of OS X 10.9 and later}0">;
168def err_drv_clang_unsupported_opt_faltivec : Error<
169  "the clang compiler does not support '%0', %1">;
170def err_drv_command_failed : Error<
171  "%0 command failed with exit code %1 (use -v to see invocation)">;
172def err_drv_compilationdatabase : Error<
173  "compilation database '%0' could not be opened: %1">;
174def err_drv_command_signalled : Error<
175  "%0 command failed due to signal (use -v to see invocation)">;
176def err_drv_force_crash : Error<
177  "failing because %select{environment variable 'FORCE_CLANG_DIAGNOSTICS_CRASH' is set|'-gen-reproducer' is used}0">;
178def err_drv_invalid_mfloat_abi : Error<
179  "invalid float ABI '%0'">;
180def err_drv_invalid_mtp : Error<
181  "invalid thread pointer reading mode '%0'">;
182def err_drv_missing_arg_mtp : Error<
183  "missing argument to '%0'">;
184def err_drv_invalid_libcxx_deployment : Error<
185  "invalid deployment target for -stdlib=libc++ (requires %0 or later)">;
186def err_drv_invalid_argument_to_option : Error<
187  "invalid argument '%0' to -%1">;
188def err_drv_malformed_sanitizer_ignorelist : Error<
189  "malformed sanitizer ignorelist: '%0'">;
190def err_drv_malformed_sanitizer_coverage_whitelist : Error<
191  "malformed sanitizer coverage whitelist: '%0'">;
192def err_drv_malformed_sanitizer_coverage_ignorelist : Error<
193  "malformed sanitizer coverage ignorelist: '%0'">;
194def err_drv_duplicate_config : Error<
195  "no more than one option '--config' is allowed">;
196def err_drv_config_file_not_exist : Error<
197  "configuration file '%0' does not exist">;
198def err_drv_config_file_not_found : Error<
199  "configuration file '%0' cannot be found">;
200def note_drv_config_file_searched_in : Note<
201  "was searched for in the directory: %0">;
202def err_drv_cannot_read_config_file : Error<
203  "cannot read configuration file '%0'">;
204def err_drv_nested_config_file: Error<
205  "option '--config' is not allowed inside configuration file">;
206def err_drv_arg_requires_bitcode_input: Error<
207  "option '%0' requires input to be LLVM bitcode">;
208
209def err_target_unsupported_arch
210  : Error<"the target architecture '%0' is not supported by the target '%1'">;
211def err_cpu_unsupported_isa
212  : Error<"CPU '%0' does not support '%1' execution mode">;
213def err_arch_unsupported_isa
214  : Error<"architecture '%0' does not support '%1' execution mode">;
215
216def err_drv_I_dash_not_supported : Error<
217  "'%0' not supported, please use -iquote instead">;
218def err_drv_unknown_argument : Error<"unknown argument: '%0'">;
219def err_drv_unknown_argument_with_suggestion : Error<
220  "unknown argument '%0'; did you mean '%1'?">;
221def warn_drv_unknown_argument_clang_cl : Warning<
222  "unknown argument ignored in clang-cl: '%0'">,
223  InGroup<UnknownArgument>;
224def warn_drv_unknown_argument_clang_cl_with_suggestion : Warning<
225  "unknown argument ignored in clang-cl '%0'; did you mean '%1'?">,
226  InGroup<UnknownArgument>;
227
228def warn_drv_ycyu_different_arg_clang_cl : Warning<
229  "support for '/Yc' and '/Yu' with different filenames not implemented yet; flags ignored">,
230  InGroup<ClangClPch>;
231def warn_drv_yc_multiple_inputs_clang_cl : Warning<
232  "support for '/Yc' with more than one source file not implemented yet; flag ignored">,
233  InGroup<ClangClPch>;
234
235def err_drv_invalid_value : Error<"invalid value '%1' in '%0'">;
236def err_drv_invalid_int_value : Error<"invalid integral value '%1' in '%0'">;
237def err_drv_invalid_value_with_suggestion : Error<
238    "invalid value '%1' in '%0', expected one of: %2">;
239def err_drv_alignment_not_power_of_two : Error<"alignment is not a power of 2 in '%0'">;
240def err_drv_invalid_remap_file : Error<
241    "invalid option '%0' not of the form <from-file>;<to-file>">;
242def err_drv_invalid_gcc_output_type : Error<
243    "invalid output type '%0' for use with gcc tool">;
244def err_drv_cc_print_options_failure : Error<
245    "unable to open CC_PRINT_OPTIONS file: %0">;
246def err_drv_lto_without_lld : Error<"LTO requires -fuse-ld=lld">;
247def err_drv_preamble_format : Error<
248    "incorrect format for -preamble-bytes=N,END">;
249def warn_invalid_ios_deployment_target : Warning<
250  "invalid iOS deployment version '%0', iOS 10 is the maximum deployment "
251  "target for 32-bit targets">, InGroup<InvalidIOSDeploymentTarget>,
252  DefaultError;
253def err_invalid_macos_32bit_deployment_target : Error<
254  "32-bit targets are not supported when building for Mac Catalyst">;
255def err_drv_invalid_os_in_arg : Error<"invalid OS value '%0' in '%1'">;
256def err_drv_conflicting_deployment_targets : Error<
257  "conflicting deployment targets, both '%0' and '%1' are present in environment">;
258def err_arc_unsupported_on_runtime : Error<
259  "-fobjc-arc is not supported on platforms using the legacy runtime">;
260def err_arc_unsupported_on_toolchain : Error< // feel free to generalize this
261  "-fobjc-arc is not supported on versions of OS X prior to 10.6">;
262def err_objc_weak_with_gc : Error<
263  "-fobjc-weak is not supported in Objective-C garbage collection">;
264def err_objc_weak_unsupported : Error<
265  "-fobjc-weak is not supported on the current deployment target">;
266def err_drv_mg_requires_m_or_mm : Error<
267  "option '-MG' requires '-M' or '-MM'">;
268def err_drv_unknown_objc_runtime : Error<
269  "unknown or ill-formed Objective-C runtime '%0'">;
270def err_drv_invalid_cf_runtime_abi
271  : Error<"invalid CoreFoundation Runtime ABI '%0'; must be one of "
272          "'objc', 'standalone', 'swift', 'swift-5.0', 'swift-4.2', 'swift-4.1'">;
273def err_drv_gnustep_objc_runtime_incompatible_binary : Error<
274  "GNUstep Objective-C runtime version %0 incompatible with target binary format">;
275def err_drv_emit_llvm_link : Error<
276   "-emit-llvm cannot be used when linking">;
277def err_drv_optimization_remark_pattern : Error<
278  "in pattern '%1': %0">;
279def err_drv_optimization_remark_format : Error<
280  "unknown remark serializer format: '%0'">;
281def err_drv_no_neon_modifier : Error<"[no]neon is not accepted as modifier, please use [no]simd instead">;
282def err_drv_invalid_omp_target : Error<"OpenMP target is invalid: '%0'">;
283def err_drv_debug_no_new_runtime : Error<"OpenMP target device debugging enabled with incompatible runtime">;
284def err_drv_incompatible_omp_arch : Error<"OpenMP target architecture '%0' pointer size is incompatible with host '%1'">;
285def err_drv_omp_host_ir_file_not_found : Error<
286  "provided host compiler IR file '%0' is required to generate code for OpenMP "
287  "target regions but cannot be found">;
288def err_drv_omp_host_target_not_supported : Error<
289  "target '%0' is not a supported OpenMP host target">;
290def err_drv_expecting_fopenmp_with_fopenmp_targets : Error<
291  "'-fopenmp-targets' must be used in conjunction with a '-fopenmp' option "
292  "compatible with offloading; e.g., '-fopenmp=libomp' or '-fopenmp=libiomp5'">;
293def err_drv_omp_offload_target_missingbcruntime : Error<
294  "no library '%0' found in the default clang lib directory or in LIBRARY_PATH"
295  "; use '--libomptarget-%1-bc-path' to specify %1 bitcode library">;
296def err_drv_omp_offload_target_bcruntime_not_found : Error<
297  "bitcode library '%0' does not exist">;
298def err_drv_omp_offload_target_cuda_version_not_support : Error<
299  "NVPTX target requires CUDA 9.2 or above; CUDA %0 detected">;
300def warn_drv_omp_offload_target_duplicate : Warning<
301  "OpenMP offloading target '%0' is similar to target '%1' already specified; "
302  "will be ignored">, InGroup<OpenMPTarget>;
303def err_drv_unsupported_embed_bitcode
304    : Error<"%0 is not supported with -fembed-bitcode">;
305def err_drv_bitcode_unsupported_on_toolchain : Error<
306  "-fembed-bitcode is not supported on versions of iOS prior to 6.0">;
307def err_drv_negative_columns : Error<
308    "invalid value '%1' in '%0', value must be 'none' or a positive integer">;
309def err_drv_small_columns : Error<
310    "invalid value '%1' in '%0', value must be '%2' or greater">;
311
312def err_drv_invalid_malign_branch_EQ : Error<
313  "invalid argument '%0' to -malign-branch=; each element must be one of: %1">;
314
315def warn_O4_is_O3 : Warning<"-O4 is equivalent to -O3">, InGroup<Deprecated>;
316def warn_drv_optimization_value : Warning<"optimization level '%0' is not supported; using '%1%2' instead">,
317  InGroup<InvalidCommandLineArgument>;
318def warn_ignored_gcc_optimization : Warning<"optimization flag '%0' is not supported">,
319  InGroup<IgnoredOptimizationArgument>;
320def warn_ignored_clang_option : Warning<"the flag '%0' has been deprecated and will be ignored">,
321  InGroup<UnusedCommandLineArgument>;
322def warn_drv_unsupported_opt_for_target : Warning<
323  "optimization flag '%0' is not supported for target '%1'">,
324  InGroup<IgnoredOptimizationArgument>;
325def warn_drv_unsupported_debug_info_opt_for_target : Warning<
326  "debug information option '%0' is not supported for target '%1'">,
327  InGroup<UnsupportedTargetOpt>;
328def warn_drv_dwarf_version_limited_by_target : Warning<
329  "debug information option '%0' is not supported; requires DWARF-%2 but "
330  "target '%1' only provides DWARF-%3">,
331  InGroup<UnsupportedTargetOpt>;
332def warn_c_kext : Warning<
333  "ignoring -fapple-kext which is valid for C++ and Objective-C++ only">;
334def warn_ignoring_fdiscard_for_bitcode : Warning<
335  "ignoring -fdiscard-value-names for LLVM Bitcode">,
336  InGroup<UnusedCommandLineArgument>;
337def warn_drv_input_file_unused : Warning<
338  "%0: '%1' input unused%select{ when '%3' is present|}2">,
339  InGroup<UnusedCommandLineArgument>;
340def warn_drv_input_file_unused_by_cpp : Warning<
341  "%0: '%1' input unused in cpp mode">,
342  InGroup<UnusedCommandLineArgument>;
343def warn_drv_preprocessed_input_file_unused : Warning<
344  "%0: previously preprocessed input%select{ unused when '%2' is present|}1">,
345  InGroup<UnusedCommandLineArgument>;
346def warn_drv_unused_argument : Warning<
347  "argument unused during compilation: '%0'">,
348  InGroup<UnusedCommandLineArgument>;
349def warn_drv_empty_joined_argument : Warning<
350  "joined argument expects additional value: '%0'">,
351  InGroup<UnusedCommandLineArgument>;
352def warn_drv_diagnostics_hotness_requires_pgo : Warning<
353  "argument '%0' requires profile-guided optimization information">,
354  InGroup<UnusedCommandLineArgument>;
355def warn_drv_clang_unsupported : Warning<
356  "the clang compiler does not support '%0'">;
357def warn_drv_deprecated_arg : Warning<
358  "argument '%0' is deprecated, use '%1' instead">, InGroup<Deprecated>;
359def warn_drv_assuming_mfloat_abi_is : Warning<
360  "unknown platform, assuming -mfloat-abi=%0">;
361def warn_ignoring_ftabstop_value : Warning<
362  "ignoring invalid -ftabstop value '%0', using default value %1">;
363def warn_drv_overriding_flag_option : Warning<
364  "overriding '%0' option with '%1'">,
365  InGroup<DiagGroup<"overriding-t-option">>;
366def warn_drv_treating_input_as_cxx : Warning<
367  "treating '%0' input as '%1' when in C++ mode, this behavior is deprecated">,
368  InGroup<Deprecated>;
369def warn_drv_pch_not_first_include : Warning<
370  "precompiled header '%0' was ignored because '%1' is not first '-include'">;
371def warn_missing_sysroot : Warning<"no such sysroot directory: '%0'">,
372  InGroup<DiagGroup<"missing-sysroot">>;
373def warn_incompatible_sysroot : Warning<"using sysroot for '%0' but targeting '%1'">,
374  InGroup<DiagGroup<"incompatible-sysroot">>;
375def warn_debug_compression_unavailable : Warning<"cannot compress debug sections (zlib not installed)">,
376  InGroup<DiagGroup<"debug-compression-unavailable">>;
377def warn_drv_disabling_vptr_no_rtti_default : Warning<
378  "implicitly disabling vptr sanitizer because rtti wasn't enabled">,
379  InGroup<AutoDisableVptrSanitizer>;
380def warn_drv_object_size_disabled_O0 : Warning<
381  "the object size sanitizer has no effect at -O0, but is explicitly enabled: %0">,
382  InGroup<InvalidCommandLineArgument>, DefaultWarnNoWerror;
383def warn_ignoring_verify_debuginfo_preserve_export : Warning<
384  "ignoring -fverify-debuginfo-preserve-export=%0 because "
385  "-fverify-debuginfo-preserve wasn't enabled">,
386  InGroup<UnusedCommandLineArgument>;
387def err_invalid_branch_protection: Error <
388  "invalid branch protection option '%0' in '%1'">;
389def err_invalid_sls_hardening : Error<
390  "invalid sls hardening option '%0' in '%1'">;
391def err_sls_hardening_arm_not_supported : Error<
392  "-mharden-sls is only supported on armv7-a or later">;
393
394def note_drv_command_failed_diag_msg : Note<
395  "diagnostic msg: %0">;
396def note_drv_t_option_is_global : Note<
397  "the last '/TC' or '/TP' option takes precedence over earlier instances">;
398def note_drv_address_sanitizer_debug_runtime : Note<
399  "AddressSanitizer doesn't support linking with debug runtime libraries yet">;
400def note_drv_use_standard : Note<"use '%0'"
401  "%select{| or '%3'|, '%3', or '%4'|, '%3', '%4', or '%5'}2 "
402  "for '%1' standard">;
403
404def err_analyzer_config_no_value : Error<
405  "analyzer-config option '%0' has a key but no value">;
406def err_analyzer_config_multiple_values : Error<
407  "analyzer-config option '%0' should contain only one '='">;
408def err_analyzer_config_invalid_input : Error<
409  "invalid input for analyzer-config option '%0', that expects %1 value">;
410def err_analyzer_config_unknown : Error<"unknown analyzer-config '%0'">;
411def err_analyzer_checker_option_unknown : Error<
412  "checker '%0' has no option called '%1'">;
413def err_analyzer_checker_option_invalid_input : Error<
414  "invalid input for checker option '%0', that expects %1">;
415def err_analyzer_checker_incompatible_analyzer_option : Error<
416  "checker cannot be enabled with analyzer option '%0' == %1">;
417
418def err_drv_invalid_hvx_length : Error<
419  "-mhvx-length is not supported without a -mhvx/-mhvx= flag">;
420def warn_drv_vectorize_needs_hvx : Warning<
421  "auto-vectorization requires HVX, use -mhvx to enable it">,
422  InGroup<OptionIgnored>;
423
424def err_drv_module_header_wrong_kind : Error<
425  "header file '%0' input type '%1' does not match type of prior input "
426  "in module compilation; use '-x %2' to override">;
427def err_drv_modules_validate_once_requires_timestamp : Error<
428  "option '-fmodules-validate-once-per-build-session' requires "
429  "'-fbuild-session-timestamp=<seconds since Epoch>' or '-fbuild-session-file=<file>'">;
430
431def err_test_module_file_extension_format : Error<
432  "-ftest-module-file-extension argument '%0' is not of the required form "
433  "'blockname:major:minor:hashed:user info'">;
434
435def warn_slash_u_filename : Warning<"'/U%0' treated as the '/U' option">,
436  InGroup<DiagGroup<"slash-u-filename">>;
437def note_use_dashdash : Note<
438  "use '--' to treat subsequent arguments as filenames">;
439
440def err_drv_ropi_rwpi_incompatible_with_pic : Error<
441  "embedded and GOT-based position independence are incompatible">;
442def err_drv_ropi_incompatible_with_cxx : Error<
443  "ROPI is not compatible with c++">;
444
445def err_stack_tagging_requires_hardware_feature : Error<
446  "'-fsanitize=memtag' requires hardware support (+memtag)">;
447
448def err_cmse_pi_are_incompatible : Error<
449  "cmse is not compatible with %select{RWPI|ROPI}0">;
450
451def warn_target_unsupported_nan2008 : Warning<
452  "ignoring '-mnan=2008' option because the '%0' architecture does not support it">,
453  InGroup<UnsupportedNan>;
454def warn_target_unsupported_nanlegacy : Warning<
455  "ignoring '-mnan=legacy' option because the '%0' architecture does not support it">,
456  InGroup<UnsupportedNan>;
457def warn_target_unsupported_abslegacy : Warning<
458  "ignoring '-mabs=legacy' option because the '%0' architecture does not support it">,
459  InGroup<UnsupportedAbs>;
460def warn_target_unsupported_abs2008 : Warning<
461  "ignoring '-mabs=2008' option because the '%0' architecture does not support it">,
462  InGroup<UnsupportedAbs>;
463def warn_target_unsupported_compact_branches : Warning<
464  "ignoring '-mcompact-branches=' option because the '%0' architecture does not"
465  " support it">, InGroup<UnsupportedCB>;
466def warn_target_unsupported_extension : Warning<
467  "ignoring extension '%0' because the '%1' architecture does not support it">,
468   InGroup<InvalidCommandLineArgument>;
469def warn_drv_unsupported_gpopt : Warning<
470  "ignoring '-mgpopt' option as it cannot be used with %select{|the implicit"
471  " usage of }0-mabicalls">,
472  InGroup<UnsupportedGPOpt>;
473def warn_drv_unsupported_sdata : Warning<
474  "ignoring '-msmall-data-limit=' with -mcmodel=large for -fpic or RV64">,
475  InGroup<OptionIgnored>;
476def warn_drv_unsupported_longcalls : Warning<
477  "ignoring '-mlong-calls' option as it is not currently supported with "
478  "%select{|the implicit usage of }0-mabicalls">,
479  InGroup<OptionIgnored>;
480def warn_drv_unsupported_pic_with_mabicalls : Warning<
481  "ignoring '%0' option as it cannot be used with "
482  "%select{implicit usage of|}1 -mabicalls and the N64 ABI">,
483  InGroup<OptionIgnored>;
484def err_drv_unsupported_noabicalls_pic : Error<
485  "position-independent code requires '-mabicalls'">;
486def err_drv_unsupported_indirect_jump_opt : Error<
487  "'-mindirect-jump=%0' is unsupported with the '%1' architecture">;
488def err_drv_unknown_indirect_jump_opt : Error<
489  "unknown '-mindirect-jump=' option '%0'">;
490def err_drv_unsupported_fpatchable_function_entry_argument : Error<
491  "the second argument of '-fpatchable-function-entry' must be smaller than the first argument">;
492
493def warn_drv_unable_to_find_directory_expected : Warning<
494  "unable to find %0 directory, expected to be in '%1'">,
495  InGroup<InvalidOrNonExistentDirectory>, DefaultIgnore;
496
497def warn_drv_ps4_force_pic : Warning<
498  "option '%0' was ignored by the PS4 toolchain, using '-fPIC'">,
499  InGroup<OptionIgnored>;
500
501def warn_drv_ps4_sdk_dir : Warning<
502  "environment variable SCE_ORBIS_SDK_DIR is set, but points to invalid or nonexistent directory '%0'">,
503  InGroup<InvalidOrNonExistentDirectory>;
504
505def err_drv_unsupported_linker : Error<"unsupported value '%0' for -linker option">;
506def err_drv_defsym_invalid_format : Error<"defsym must be of the form: sym=value: %0">;
507def err_drv_defsym_invalid_symval : Error<"value is not an integer: %0">;
508def warn_drv_msvc_not_found : Warning<
509  "unable to find a Visual Studio installation; "
510  "try running Clang from a developer command prompt">,
511  InGroup<DiagGroup<"msvc-not-found">>;
512
513def warn_drv_fuse_ld_path : Warning<
514  "'-fuse-ld=' taking a path is deprecated; use '--ld-path=' instead">,
515  InGroup<FUseLdPath>, DefaultIgnore;
516
517def warn_drv_fine_grained_bitfield_accesses_ignored : Warning<
518  "option '-ffine-grained-bitfield-accesses' cannot be enabled together with a sanitizer; flag ignored">,
519  InGroup<OptionIgnored>;
520
521def note_drv_verify_prefix_spelling : Note<
522  "-verify prefixes must start with a letter and contain only alphanumeric"
523  " characters, hyphens, and underscores">;
524
525def warn_drv_global_isel_incomplete : Warning<
526  "-fglobal-isel support for the '%0' architecture is incomplete">,
527  InGroup<GlobalISel>;
528
529def warn_drv_global_isel_incomplete_opt : Warning<
530  "-fglobal-isel support is incomplete for this architecture at the current optimization level">,
531  InGroup<GlobalISel>;
532
533def warn_drv_moutline_unsupported_opt : Warning<
534  "'%0' does not support '-moutline'; flag ignored">,
535  InGroup<OptionIgnored>;
536
537def warn_drv_moutline_atomics_unsupported_opt : Warning<
538  "'%0' does not support '-moutline-atomics'; flag ignored">,
539  InGroup<OptionIgnored>;
540
541def warn_drv_darwin_sdk_invalid_settings : Warning<
542  "SDK settings were ignored as 'SDKSettings.json' could not be parsed">,
543  InGroup<DiagGroup<"darwin-sdk-settings">>;
544
545def err_drv_trivial_auto_var_init_zero_disabled : Error<
546  "'-ftrivial-auto-var-init=zero' hasn't been enabled; enable it at your own "
547  "peril for benchmarking purpose only with "
548  "'-enable-trivial-auto-var-init-zero-knowing-it-will-be-removed-from-clang'">;
549
550def err_drv_trivial_auto_var_init_stop_after_missing_dependency : Error<
551  "'-ftrivial-auto-var-init-stop-after=*' is used without "
552  "'-ftrivial-auto-var-init=zero' or '-ftrivial-auto-var-init=pattern'">;
553
554def err_drv_trivial_auto_var_init_stop_after_invalid_value : Error<
555  "'-ftrivial-auto-var-init-stop-after=*' only accepts positive integers">;
556
557def warn_drv_msp430_hwmult_unsupported : Warning<
558  "the given MCU does not support hardware multiply, but '-mhwmult' is set to "
559  "%0">, InGroup<InvalidCommandLineArgument>;
560def warn_drv_msp430_hwmult_mismatch : Warning<
561  "the given MCU supports %0 hardware multiply, but '-mhwmult' is set to %1">,
562   InGroup<InvalidCommandLineArgument>;
563def warn_drv_msp430_hwmult_no_device : Warning<
564  "no MCU device specified, but '-mhwmult' is set to 'auto', assuming no "
565  "hardware multiply; use '-mmcu' to specify an MSP430 device, or '-mhwmult' "
566  "to set the hardware multiply type explicitly">,
567  InGroup<InvalidCommandLineArgument>;
568
569def warn_drv_libstdcxx_not_found : Warning<
570  "include path for libstdc++ headers not found; pass '-stdlib=libc++' on the "
571  "command line to use the libc++ standard library instead">,
572  InGroup<DiagGroup<"stdlibcxx-not-found">>;
573
574def err_drv_cannot_mix_options : Error<"cannot specify '%1' along with '%0'">;
575
576def err_drv_invalid_object_mode : Error<
577  "OBJECT_MODE setting %0 is not recognized and is not a valid setting">;
578
579def err_aix_unsupported_tls_model : Error<"TLS model '%0' is not yet supported on AIX">;
580
581def err_invalid_cxx_abi : Error<"invalid C++ ABI name '%0'">;
582def err_unsupported_cxx_abi : Error<"C++ ABI '%0' is not supported on target triple '%1'">;
583
584def note_cc1_round_trip_original : Note<"original arguments in round-trip: %0">;
585def note_cc1_round_trip_generated : Note<
586  "generated arguments #%0 in round-trip: %1">;
587def remark_cc1_round_trip_generated : Remark<
588  "generated arguments #%0 in round-trip: %1">, InGroup<RoundTripCC1Args>;
589def err_cc1_round_trip_fail_then_ok : Error<
590  "original arguments parse failed, then succeeded in round-trip">;
591def err_cc1_round_trip_ok_then_fail : Error<
592  "generated arguments parse failed in round-trip">;
593def err_cc1_round_trip_mismatch : Error<
594  "generated arguments do not match in round-trip">;
595}
596