def flto : Flag<["-"], "flto">, Group<f_Group>;
def fno_lto : Flag<["-"], "fno-lto">, Group<f_Group>;
def fmacro_backtrace_limit_EQ : Joined<["-"], "fmacro-backtrace-limit=">,
- Group<f_Group>;
+ Group<f_Group>, Flags<[DriverOption, CoreOption]>;
def fmerge_all_constants : Flag<["-"], "fmerge-all-constants">, Group<f_Group>;
def fmessage_length_EQ : Joined<["-"], "fmessage-length=">, Group<f_Group>;
def fms_extensions : Flag<["-"], "fms-extensions">, Group<f_Group>, Flags<[CC1Option]>,
// ThreadSafeStatics-NOT: "-fno-threadsafe-statics"
// Accept "core" clang options.
-// (/Zs is for syntax-only)
+// (/Zs is for syntax-only, -Werror makes it fail hard on unknown options)
// RUN: %clang_cl \
// RUN: --driver-mode=cl \
// RUN: -ferror-limit=10 \
// RUN: -fno-strict-aliasing \
// RUN: -fstrict-aliasing \
// RUN: -mllvm -disable-llvm-optzns \
-// RUN: -Wunused-variables \
-// RUN: /Zs -- %s 2>&1
+// RUN: -Wunused-variable \
+// RUN: -fmacro-backtrace-limit=0 \
+// RUN: -Werror /Zs -- %s 2>&1
void f() { }