llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-flang-driver Author: Harshit (Harshit2906) <details> <summary>Changes</summary> Fixes #<!-- -->232487 --- Patch is 134.59 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/235473.diff 2 Files Affected: - (modified) clang/include/clang/Basic/DiagnosticDriverKinds.td (+51-306) - (modified) flang/lib/Frontend/CompilerInvocation.cpp (+365-1386) ``````````diff diff --git a/clang/include/clang/Basic/DiagnosticDriverKinds.td b/clang/include/clang/Basic/DiagnosticDriverKinds.td index 79859e724a8179..f04e199b46fe17 100644 --- a/clang/include/clang/Basic/DiagnosticDriverKinds.td +++ b/clang/include/clang/Basic/DiagnosticDriverKinds.td @@ -20,8 +20,6 @@ def err_drv_unsupported_opt_for_language_mode : Error< "unsupported option '%0' for language mode '%1'">; def err_drv_unsupported_option_argument : Error< "unsupported argument '%1' to option '%0'">; -def err_drv_unsupported_option_argument_for_target : Error< - "unsupported argument '%1' to option '%0' for target '%2'">; def err_drv_unknown_stdin_type : Error< "-E or -x required when input is from standard input">; def err_drv_unknown_stdin_type_clang_cl : Error< @@ -33,13 +31,12 @@ def err_drv_invalid_riscv_arch_name : Error< "invalid arch name '%0', %1">; def err_drv_invalid_riscv_cpu_name_for_target : Error< "cpu '%0' does not support rv%select{32|64}1">; -def err_drv_invalid_riscv_mtune_string : Error< - "invalid %select{-mtune|tune feature}0 string '%1': %2">; def warn_drv_invalid_arch_name_with_suggestion : Warning< "ignoring invalid /arch: argument '%0'; for %select{64|32}1-bit expected one of %2">, InGroup<UnusedCommandLineArgument>; def warn_drv_avr_mcu_not_specified : Warning< - "no target microcontroller specified, please pass -mmcu=<mcu name>">, + "no target microcontroller specified on command line, cannot " + "link standard libraries, please pass -mmcu=<mcu name>">, InGroup<AVRRtlibLinkingQuirks>; def warn_drv_avr_libc_not_found: Warning< "no avr-libc installation can be found on the system, " @@ -58,8 +55,6 @@ def warn_drv_avr_stdlib_not_linked: Warning< InGroup<AVRRtlibLinkingQuirks>; def err_drv_cuda_bad_gpu_arch : Error<"unsupported CUDA gpu architecture: %0">; def err_drv_offload_bad_gpu_arch : Error<"unsupported %0 gpu architecture: %1">; -def err_drv_offload_missing_gpu_arch : Error< - "must pass in an explicit %0 gpu architecture to '%1'">; def err_drv_no_cuda_installation : Error< "cannot find CUDA installation; provide its path via '--cuda-path', or pass " "'-nocudainc' to build without CUDA includes">; @@ -69,51 +64,24 @@ def err_drv_no_cuda_libdevice : Error< "libdevice">; def err_drv_no_rocm_device_lib : Error< - "cannot find ROCm device library%select{| for %1| for ABI version %1" - "%select{|, which requires ROCm %3 or higher}2}0; provide its path via " + "cannot find ROCm device library%select{| for %1|for ABI version %1}0; provide its path via " "'--rocm-path' or '--rocm-device-lib-path', or pass '-nogpulib' to build " "without ROCm device library">; def err_drv_no_hip_runtime : Error< "cannot find HIP runtime; provide its path via '--rocm-path', or pass " "'-nogpuinc' to build without HIP runtime">; -def err_drv_no_hipstdpar_lib : Error< - "cannot find HIP Standard Parallelism Acceleration library; provide it via " - "'--hipstdpar-path'">; -def err_drv_no_hipstdpar_thrust_lib : Error< - "cannot find rocThrust, which is required by the HIP Standard Parallelism " - "Acceleration library; provide it via " - "'--hipstdpar-thrust-path'">; -def err_drv_no_hipstdpar_prim_lib : Error< - "cannot find rocPrim, which is required by the HIP Standard Parallelism " - "Acceleration library; provide it via '--hipstdpar-prim-path'">; def err_drv_no_hipspv_device_lib : Error< "cannot find HIP device library%select{| for %1}0; provide its path via " "'--hip-path' or '--hip-device-lib-path', or pass '-nogpulib' to build " "without HIP device library">; def err_drv_hipspv_no_hip_path : Error< - "'--hip-path' must be specified when offloading to SPIR-V unless '-nogpuinc' " - "is given">; - -def err_drv_sycl_no_rdc_multiple_targets : Error< - "'%0' is not supported with multiple SYCL offloading targets">; - -// SYCL Windows-specific diagnostics -def err_drv_sycl_requires_dynamic_crt : Error< - "SYCL requires dynamic C++ runtime (/MD or /MDd); " - "static C++ runtime (/MT or /MTd) is not supported">; - -def err_drv_no_spv_tools : Error<"cannot find SPIR-V Tools binary '%0', which " - "is required for SPIR-V compilation. " - "It can be obtained from your system package " - "manager or from KhronosGroup/SPIRV-Tools " - "on GitHub">; + "'--hip-path' must be specified when offloading to " + "SPIR-V%select{| unless %1 is given}0.">; def err_drv_undetermined_gpu_arch : Error< - "cannot determine %0 architecture: %1; consider passing it via '%2'; " - "environment variable CLANG_TOOLCHAIN_PROGRAM_TIMEOUT specifies the tool " - "timeout (integer secs, <=0 is infinite)">; - + "cannot determine %0 architecture: %1; consider passing it via " + "'%2'">; def warn_drv_multi_gpu_arch : Warning< "multiple %0 architectures are detected: %1; only the first one is used for " "'%2'">, InGroup<MultiGPU>; @@ -132,8 +100,6 @@ def err_drv_cuda_host_arch : Error< "unsupported architecture '%0' for host compilation">; def err_drv_mix_cuda_hip : Error< "mixed CUDA and HIP compilation is not supported">; -def err_drv_mix_offload : Error< - "mixed %0 and %1 offloading compilation is not supported">; def err_drv_bad_target_id : Error< "invalid target ID '%0'; format is a processor name followed by an optional " "colon-delimited list of features followed by an enable/disable sign (e.g., " @@ -142,9 +108,6 @@ def err_drv_bad_offload_arch_combo : Error< "invalid offload arch combinations: '%0' and '%1' (for a specific processor, " "a feature should either exist in all offload archs, or not exist in any " "offload archs)">; -def err_drv_unsupported_option_for_offload_arch_req_feature : Error< - "'%0' option for offload arch '%1' is not currently supported " - "there. Use it with an offload arch containing '%2' instead">; def warn_drv_unsupported_option_for_offload_arch_req_feature : Warning< "ignoring '%0' option for offload arch '%1' as it is not currently supported " "there. Use it with an offload arch containing '%2' instead">, @@ -152,43 +115,16 @@ def warn_drv_unsupported_option_for_offload_arch_req_feature : Warning< def warn_drv_unsupported_option_for_target : Warning< "ignoring '%0' option as it is not currently supported for target '%1'">, InGroup<OptionIgnored>; -def err_drv_unsupported_option_for_target : Error< - "'%0' option is not currently supported for target '%1'">; -def warn_drv_unsupported_option_part_for_target : Warning< - "ignoring '%0' in '%1' option as it is not currently supported for target '%2'">, - InGroup<OptionIgnored>; -def err_drv_unsupported_option_part_for_target : Error< - "'%0' in '%1' option is not currently supported for target '%2'">; -def warn_drv_invalid_argument_for_flang : Warning< - "'%0' is not valid for Fortran">, - InGroup<OptionIgnored>; def warn_drv_unsupported_option_for_flang : Warning< "the argument '%0' is not supported for option '%1'. Mapping to '%1%2'">, InGroup<OptionIgnored>; def warn_drv_unsupported_diag_option_for_flang : Warning< - "the warning option '-%0' is not supported">, + "The warning option '-%0' is not supported">, InGroup<OptionIgnored>; def warn_drv_unsupported_option_for_processor : Warning< "ignoring '%0' option as it is not currently supported for processor '%1'">, InGroup<OptionIgnored>; -def warn_drv_unsupported_option_for_runtime : Warning< - "ignoring '%0' option as it is not currently supported for runtime '%1'">, - InGroup<OptionIgnored>; -def warn_drv_hexagon_reserved_caller_saved_reg : Warning< - "reserving the caller-saved register '%0' may lead to incorrect code if it " - "is not also reserved in all other translation units and libraries; you are " - "responsible for ensuring the register is managed consistently">, - InGroup<DiagGroup<"hexagon-reserved-caller-saved">>; -def warn_drv_unsupported_openmp_library : Warning< - "the library '%0=%1' is not supported, OpenMP will not be enabled">, - InGroup<OptionIgnored>; -def warn_openmp_impl_incomplete : Warning< - "OpenMP support for version %0 in flang is still incomplete">, - InGroup<ExperimentalOption>; -def warn_openmp_spec_incomplete : Warning< - "the specification for OpenMP version %0 is still under development; " - "the syntax and semantics of new features may be subject to change">, - InGroup<ExperimentalOption>; + def err_drv_invalid_thread_model_for_target : Error< "invalid thread model '%0' in '%1' for this target">; def err_drv_invalid_linker_name : Error< @@ -199,14 +135,10 @@ def err_drv_unsupported_rtlib_for_platform : Error< "unsupported runtime library '%0' for platform '%1'">; def err_drv_invalid_unwindlib_name : Error< "invalid unwind library name in argument '%0'">; -def err_drv_unsupported_unwind_for_platform : Error< - "unsupported unwind library '%0' for platform '%1'">; def err_drv_incompatible_unwindlib : Error< "--rtlib=libgcc requires --unwindlib=libgcc">; def err_drv_incompatible_options : Error< "the combination of '%0' and '%1' is incompatible">; -def err_drv_invalid_cstdlib_name : Error< - "invalid C library name in argument '%0'">; def err_drv_invalid_stdlib_name : Error< "invalid library name in argument '%0'">; def err_drv_invalid_output_with_multiple_archs : Error< @@ -240,26 +172,16 @@ def err_drv_invalid_Xopenmp_target_with_args : Error< "invalid -Xopenmp-target argument: '%0', options requiring arguments are unsupported">; def err_drv_argument_only_allowed_with : Error< "invalid argument '%0' only allowed with '%1'">; -def err_drv_opt_unsupported_input_type : Error< - "'%0' invalid for input of type %1">; +def err_drv_minws_unsupported_input_type : Error< + "'-fminimize-whitespace' invalid for input of type %0">; def err_drv_amdgpu_ieee_without_no_honor_nans : Error< "invalid argument '-mno-amdgpu-ieee' only allowed with relaxed NaN handling">; def err_drv_argument_not_allowed_with : Error< "invalid argument '%0' not allowed with '%1'">; -def warn_drv_argument_not_allowed_with : Warning< - "invalid argument '%0' not allowed with '%1'">, - InGroup<OptionIgnored>; -def err_drv_sycl_requires_cxx17 : Error< - "SYCL requires C++17 or later; '%0' is not supported">; def err_drv_cannot_open_randomize_layout_seed_file : Error< "cannot read randomize layout seed file '%0'">; def err_drv_invalid_version_number : Error< "invalid version number in '%0'">; -def err_drv_invalid_version_number_inferred - : Error<"invalid version number '%0' inferred from '%1'">; -def err_drv_missing_version_number : Error<"missing version number in '%0'">; -def err_drv_kcfi_arity_unsupported_target : Error< - "target '%0' is unsupported by -fsanitize-kcfi-arity">; def err_drv_no_linker_llvm_support : Error< "'%0': unable to pass LLVM bit-code files to linker">; def err_drv_no_ast_support : Error< @@ -328,11 +250,6 @@ def err_cpu_unsupported_isa def err_arch_unsupported_isa : Error<"architecture '%0' does not support '%1' execution mode">; -def err_zos_target_release_discontinued - : Error<"z/OS target level \"%0\" is discontinued">; -def err_zos_target_unrecognized_release - : Error<"z/OS target level \"%0\" is invalid">; - def err_drv_I_dash_not_supported : Error< "'%0' not supported, please use -iquote instead">; def err_drv_unknown_argument : Error<"unknown argument: '%0'">; @@ -356,12 +273,8 @@ def warn_drv_yc_multiple_inputs_clang_cl : Warning< def warn_drv_potentially_misspelled_joined_argument : Warning< "joined argument treated as '%0'; did you mean '%1'?">, InGroup<UnknownArgument>; -def err_drv_too_many_actions: Error< - "only one action option is allowed. Got %0">; def err_drv_invalid_value : Error<"invalid value '%1' in '%0'">; def err_drv_invalid_int_value : Error<"invalid integral value '%1' in '%0'">; -def err_drv_invalid_escaped_command_line - : Error<"invalid escaped command line: %0">; def err_drv_invalid_value_with_suggestion : Error< "invalid value '%1' in '%0', expected one of: %2">; def err_drv_alignment_not_power_of_two : Error<"alignment is not a power of 2 in '%0'">; @@ -412,11 +325,9 @@ def err_drv_optimization_remark_format : Error< def err_drv_no_neon_modifier : Error<"[no]neon is not accepted as modifier, please use [no]simd instead">; def err_drv_invalid_omp_target : Error<"OpenMP target is invalid: '%0'">; def err_drv_incompatible_omp_arch : Error<"OpenMP target architecture '%0' pointer size is incompatible with host '%1'">; -def err_drv_dyndbg_lto : Error<"'-fdynamic-debugging' incompatible with '-flto'">; -def err_drv_dyndbg_incompatible : Error<"'-fdynamic-debugging' incompatible with '%0'">; -def err_drv_dyndbg_ir : Error<"'-fdynamic-debugging' incompatible with IR input">; -def warn_drv_dyndbg_req_debug : Warning<"'-fdynamic-debugging' ignored: requires debug info">, - InGroup<DynamicDebugging>; +def err_drv_omp_host_ir_file_not_found : Error< + "provided host compiler IR file '%0' is required to generate code for OpenMP " + "target regions but cannot be found">; def err_drv_omp_host_target_not_supported : Error< "target '%0' is not a supported OpenMP host target">; def err_drv_expecting_fopenmp_with_fopenmp_targets : Error< @@ -424,7 +335,7 @@ def err_drv_expecting_fopenmp_with_fopenmp_targets : Error< "compatible with offloading; e.g., '-fopenmp=libomp' or '-fopenmp=libiomp5'">; def err_drv_failed_to_deduce_target_from_arch : Error< "failed to deduce triple for target architecture '%0'; specify the triple " - "using '-fopenmp-targets' and '-Xopenmp-target' instead">; + "using '-fopenmp-targets' and '-Xopenmp-target' instead.">; def err_drv_omp_offload_target_missingbcruntime : Error< "no library '%0' found in the default clang lib directory or in LIBRARY_PATH" "; use '--libomptarget-%1-bc-path' to specify %1 bitcode library">; @@ -444,13 +355,8 @@ def err_drv_negative_columns : Error< def err_drv_small_columns : Error< "invalid value '%1' in '%0', value must be '%2' or greater">; def err_drv_large_columns : Error< - "invalid value '%1' in '%0', value must be '%2' or smaller">; -def warn_drv_fraw_string_literals_in_cxx11 : Warning< - "ignoring '-f%select{no-|}0raw-string-literals', which is only valid for C and C++ standards before C++11">, - InGroup<UnusedCommandLineArgument>; - -def err_drv_libclc_not_found : Error<"no libclc library '%0' found in the clang resource directory">; - + "invalid value '%1' in '%0', value must be '2147483647' or smaller">; + def err_drv_invalid_malign_branch_EQ : Error< "invalid argument '%0' to -malign-branch=; each element must be one of: %1">; @@ -458,14 +364,8 @@ def err_drv_print_header_env_var : Error< "environment variable CC_PRINT_HEADERS_%select{FORMAT|FILTERING}0 has invalid value %1">; def err_drv_print_header_env_var_combination : Error< "unsupported combination: CC_PRINT_HEADERS_FORMAT=%0 and CC_PRINT_HEADERS_FILTERING=%1">; -def err_drv_print_header_env_var_invalid_format : Error< - "environment variable CC_PRINT_HEADERS_FORMAT=%0 requires a compatible value for CC_PRINT_HEADERS_FILTERING">; -def err_drv_print_header_cc1_invalid_combination : Error< +def err_drv_print_header_env_var_combination_cc1 : Error< "unsupported combination: -header-include-format=%0 and -header-include-filtering=%1">; -def err_drv_print_header_cc1_invalid_filtering : Error< - "-header-include-filtering=%0 requires a compatible value for -header-include-format">; -def err_drv_print_header_cc1_invalid_format : Error< - "-header-include-format=%0 requires a compatible value for -header-include-filtering">; def warn_O4_is_O3 : Warning<"-O4 is equivalent to -O3">, InGroup<Deprecated>; def warn_drv_optimization_value : Warning<"optimization level '%0' is not supported; using '%1%2' instead">, @@ -477,9 +377,6 @@ def warn_ignored_clang_option : Warning<"the flag '%0' has been deprecated and w def warn_drv_unsupported_opt_for_target : Warning< "optimization flag '%0' is not supported for target '%1'">, InGroup<IgnoredOptimizationArgument>; -def warn_drv_riscv_be_experimental : Warning< - "big-endian RISC-V target support is experimental">, - InGroup<RISCVBEExperimental>; def warn_drv_unsupported_debug_info_opt_for_target : Warning< "debug information option '%0' is not supported for target '%1'">, InGroup<UnsupportedTargetOpt>; @@ -489,6 +386,9 @@ def warn_drv_dwarf_version_limited_by_target : Warning< InGroup<UnsupportedTargetOpt>; def warn_c_kext : Warning< "ignoring -fapple-kext which is valid for C++ and Objective-C++ only">; +def warn_ignoring_fdiscard_for_bitcode : Warning< + "ignoring -fdiscard-value-names for LLVM Bitcode">, + InGroup<UnusedCommandLineArgument>; def warn_drv_input_file_unused : Warning< "%0: '%1' input unused%select{ when '%3' is present|}2">, InGroup<UnusedCommandLineArgument>; @@ -516,17 +416,7 @@ def warn_drv_diagnostics_misexpect_requires_pgo : Warning< def warn_drv_clang_unsupported : Warning< "the clang compiler does not support '%0'">; def warn_drv_deprecated_arg : Warning< - "argument '%0' is deprecated%select{|, use '%2' instead}1">, InGroup<Deprecated>; -def warn_drv_deprecated_arg_ofast : Warning< - "argument '-Ofast' is deprecated; use '-O3' to enable only conforming optimizations, " - "or consult the documentation for the same behavior">, - InGroup<DeprecatedOFast>; -def warn_drv_deprecated_arg_ofast_for_flang : Warning< - "argument '-Ofast' is deprecated; use '-O3 -ffast-math -fstack-arrays -fno-protect-parens' for the same behavior," - " or '-O3 -fstack-arrays' to enable only conforming optimizations">, - InGroup<DeprecatedOFast>; -def warn_drv_deprecated_custom : Warning< - "argument '%0' is deprecated, %1">, InGroup<Deprecated>; + "argument '%0' is deprecated, use '%1' instead">, InGroup<Deprecated>; def warn_drv_assuming_mfloat_abi_is : Warning< "unknown platform, assuming -mfloat-abi=%0">; def warn_drv_unsupported_float_abi_by_lib : Warning< @@ -537,34 +427,20 @@ def warn_drv_no_floating_point_registers: Warning< InGroup<UnsupportedABI>; def warn_ignoring_ftabstop_value : Warning< "ignoring invalid -ftabstop value '%0', using default value %1">; -def warn_drv_overriding_option : Warning< +def warn_drv_overriding_flag_option : Warning< "overriding '%0' option with '%1'">, - InGroup<DiagGroup<"overriding-option">>; -def warn_drv_overriding_deployment_version - : Warning<"overriding deployment version from '%0' to '%1'">, - InGroup<DiagGroup<"overriding-deployment-version">>; -def warn_drv_overriding_complex_range : Warning< - "'%1' sets complex range to \"%3\" overriding the setting of \"%2\" that was implied by '%0'">, - InGroup<DiagGroup<"overriding-complex-range">>; + InGroup<DiagGroup<"overriding-t-option">>; def warn_drv_treating_input_as_cxx : Warning< "treating '%0' input as '%1' when in C++ mode, this behavior is deprecated">, InGroup<Deprecated>; def warn_drv_pch_not_first_include : Warning< "precompiled header '%0' was ignored because '%1' is not first '-include'">; -def warn_drv_pch_ignoring_gch_file : Warning< - "precompiled header '%0' was ignored because it is not a clang PCH file">, - InGroup<IgnoredGCH>; -def warn_drv_pch_ignoring_gch_dir : Warning< - "precompiled header directory '%0' was ignored because it contains no clang PCH files">, - InGroup<IgnoredGCH>; def warn_missing_sysroot : Warning<"no such sysroot directory: '%0'">, InGroup<DiagGroup<"missing-sysroot">>; def warn_incompatible_sysroot : Warning<"using sysroot for '%0' but targeting '%1'">, InGroup<DiagGroup<"incompatible-sysroot">>; def warn_debug_compression_unavailable : Warning<"cannot compress debug sections (%0 not enabled)">, InGroup<DiagGroup<"debug-compression-unavailable">>; -def err_drv_time_trace_compression_unavailable - : Error<"cannot compress time trace (%0 not enabled)">; def warn_drv_disabling_vptr_no_rtti_default : Warning< "implicitly disabling vptr sanitizer because rtti wasn't enabled">, InGroup<AutoDisableVptrSanitizer>; @@ -577,17 +453,8 @@ def warn_ignoring_verify_debuginfo_preserve_export : Warning< InGroup<UnusedCommandLineArgument>; def warn_unsupported_branch_protection: Warning < "invalid branch protection option '%0' in '%1'">, InGroup<BranchProtection>; -def warn_harden_pac_ret_requires_pac_ret: ... [truncated] `````````` </details> https://github.com/llvm/llvm-project/pull/235473 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
