From: Bertrand Drouvot Date: Wed, 18 Mar 2026 05:53:12 +0000 Subject: [PATCH v1] meson: error about unsupported user-supplied c_args before C11 check When using clang, meson injects -Werror=unknown-warning-option into cc.compiles() calls. A user-supplied c_args flag unsupported by clang therefore causes the C11 check to fail with the misleading error "C compiler does not support C11". This commit adds a cc.has_multi_arguments() check before the C11 test to catch unsupported c_args early. --- meson.build | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/meson.build b/meson.build index 46bd6b1468a..aadaf706e2e 100644 --- a/meson.build +++ b/meson.build @@ -620,6 +620,15 @@ dir_doc_extension = dir_doc / 'extension' # used, they need to be added to test_c_args as well. ############################################################### +# Validate user-supplied c_args early: when using clang, meson injects +# -Werror=unknown-warning-option into cc.compiles(), so an unsupported +# flag would cause the C11 check below to fail with a misleading error. +if not cc.has_multi_arguments(get_option('c_args')) + error('One or more c_args are not supported by @0@ @1@'.format( + cc.get_id(), + cc.version())) +endif + # Do we need an option to enable C11? c11_test = ''' #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L -- 2.34.1 --tHmfn+rjbozXnl3O--