https://github.com/PiJoules created https://github.com/llvm/llvm-project/pull/142845
This actually creates an alias to the original flag omitting the experimental part. This has been in prod use for a while and isn't necessary. >From 676b29c1dd2b1c303211e3faf6252a12f5d69f31 Mon Sep 17 00:00:00 2001 From: Leonard Chan <leonardc...@google.com> Date: Wed, 4 Jun 2025 13:25:07 -0700 Subject: [PATCH] [clang] Remove the experimental prefix from -fexperimental-relative-c++-abi-vtables This actually creates an alias to the original flag omitting the experimental part. This has been in prod use for a while and isn't necessary. --- clang/include/clang/Driver/Options.td | 21 +++++++++++++-------- clang/test/Driver/relative-vtables-flag.cpp | 2 ++ 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/clang/include/clang/Driver/Options.td b/clang/include/clang/Driver/Options.td index 5ca31c253ed8f..73c5424d4f0ae 100644 --- a/clang/include/clang/Driver/Options.td +++ b/clang/include/clang/Driver/Options.td @@ -2996,14 +2996,19 @@ defm fine_grained_bitfield_accesses : BoolOption<"f", "fine-grained-bitfield-acc BothFlags<[], [ClangOption, CC1Option]>>, Group<f_clang_Group>; -def fexperimental_relative_cxx_abi_vtables : - Flag<["-"], "fexperimental-relative-c++-abi-vtables">, - Group<f_clang_Group>, Visibility<[ClangOption, CC1Option]>, - HelpText<"Use the experimental C++ class ABI for classes with virtual tables">; -def fno_experimental_relative_cxx_abi_vtables : - Flag<["-"], "fno-experimental-relative-c++-abi-vtables">, - Group<f_clang_Group>, Visibility<[ClangOption, CC1Option]>, - HelpText<"Do not use the experimental C++ class ABI for classes with virtual tables">; +defm experimental_relative_cxx_abi_vtables + : BoolFOption< + "experimental-relative-c++-abi-vtables", + LangOpts<"RelativeCXXABIVTables">, DefaultFalse, + PosFlag<SetTrue, [], [ClangOption, CC1Option], "Use ">, + NegFlag<SetFalse, [], [ClangOption, CC1Option], "Do not use ">, + BothFlags<[], [ClangOption, CC1Option], + " the experimental C++ class ABI for classes with virtual " + "tables">>; +def : Flag<["-"], "frelative-c++-abi-vtables">, + Alias<fexperimental_relative_cxx_abi_vtables>; +def : Flag<["-"], "fno-relative-c++-abi-vtables">, + Alias<fno_experimental_relative_cxx_abi_vtables>; defm experimental_omit_vtable_rtti : BoolFOption<"experimental-omit-vtable-rtti", LangOpts<"OmitVTableRTTI">, DefaultFalse, diff --git a/clang/test/Driver/relative-vtables-flag.cpp b/clang/test/Driver/relative-vtables-flag.cpp index 1253809e1d428..2a38679135459 100644 --- a/clang/test/Driver/relative-vtables-flag.cpp +++ b/clang/test/Driver/relative-vtables-flag.cpp @@ -2,6 +2,8 @@ // RUN: %clangxx --target=aarch64-unknown-fuchsia -fno-experimental-relative-c++-abi-vtables -c %s -### 2>&1 | FileCheck %s --check-prefix=NO-RV // RUN: %clangxx --target=aarch64-unknown-fuchsia -c %s -### 2>&1 | FileCheck %s --check-prefix=NO-RV // RUN: %clangxx --target=aarch64-unknown-linux-gnu -c %s -### 2>&1 | FileCheck %s --check-prefix=NO-RV +// RUN: %clangxx --target=aarch64-unknown-fuchsia -frelative-c++-abi-vtables -c %s -### 2>&1 | FileCheck %s --check-prefix=RV +// RUN: %clangxx --target=aarch64-unknown-fuchsia -fno-relative-c++-abi-vtables -c %s -### 2>&1 | FileCheck %s --check-prefix=NO-RV // RV: "-fexperimental-relative-c++-abi-vtables" // NO-RV-NOT: "-fexperimental-relative-c++-abi-vtables" _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits