Author: Zahira Ammarguellat Date: 2024-01-31T09:20:36-05:00 New Revision: e538486e90539096e7851d0deba4ea9ed94fced2
URL: https://github.com/llvm/llvm-project/commit/e538486e90539096e7851d0deba4ea9ed94fced2 DIFF: https://github.com/llvm/llvm-project/commit/e538486e90539096e7851d0deba4ea9ed94fced2.diff LOG: [Driver] Fix erroneous warning for -fcx-limited-range and -fcx-fortran-rules. (#79821) The options `-fcx-limited-range` and `-fcx-fortran-rules` were added in _https://github.com/llvm/llvm-project/pull/70244_ The code adding the options introduced an erroneous warning. `$ clang -c -fcx-limited-range t1.c` `clang: warning: overriding '' option with '-fcx-limited-range' [-Woverriding-option]` and `$ clang -c -fcx-fortran-rules t1.c` `clang: warning: overriding '' option with '-fcx-fortran-rules' [-Woverriding-option]` The warning doesn't make sense. This patch removes it. Added: Modified: clang/lib/Driver/ToolChains/Clang.cpp clang/test/Driver/range.c Removed: ################################################################################ diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp index 8d8965fdf76fb..7ceb248f7afb9 100644 --- a/clang/lib/Driver/ToolChains/Clang.cpp +++ b/clang/lib/Driver/ToolChains/Clang.cpp @@ -2705,7 +2705,7 @@ static StringRef EnumComplexRangeToStr(LangOptions::ComplexRangeKind Range) { static void EmitComplexRangeDiag(const Driver &D, LangOptions::ComplexRangeKind Range1, LangOptions::ComplexRangeKind Range2) { - if (Range1 != LangOptions::ComplexRangeKind::CX_Full) + if (Range1 != Range2 && Range1 != LangOptions::ComplexRangeKind::CX_None) D.Diag(clang::diag::warn_drv_overriding_option) << EnumComplexRangeToStr(Range1) << EnumComplexRangeToStr(Range2); } diff --git a/clang/test/Driver/range.c b/clang/test/Driver/range.c index 045d9c7d3d802..49116df2f4480 100644 --- a/clang/test/Driver/range.c +++ b/clang/test/Driver/range.c @@ -35,6 +35,12 @@ // RUN: %clang -### -target x86_64 -ffast-math -fno-cx-limited-range -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=FULL %s +// RUN: %clang -### -Werror -target x86_64 -fcx-limited-range -c %s 2>&1 \ +// RUN: | FileCheck --check-prefix=LMTD %s + +// RUN: %clang -### -Werror -target x86_64 -fcx-fortran-rules -c %s 2>&1 \ +// RUN: | FileCheck --check-prefix=FRTRN %s + // LMTD: -complex-range=limited // FULL: -complex-range=full // LMTD-NOT: -complex-range=fortran _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits