On Tue, Sep 23, 2025 at 2:35 PM Luc Grosheintz <[email protected]>
wrote:

> When running the tests without pre-compiled headers
> (--disable-libstdcxx-pch), the test fails, because the feature
> testing macro (FTM) isn't defined yet.
>
> This commit moves checking the FMT to a dedicated file (version.cc)
> that's run without PCH.
>
> libstdc++-v3/ChangeLog:
>
>         * testsuite/20_util/function_objects/not_fn/nttp.cc: Move
>         test of feature testing macro to version.cc
>         * testsuite/20_util/function_objects/not_fn/version.cc: New test.
>
> Signed-off-by: Luc Grosheintz <[email protected]>
> ---
>
LGTM. I have pulled this patch locally and confirmed that the test failure
is gone with configuration.


>  .../testsuite/20_util/function_objects/not_fn/nttp.cc  |  6 ------
>  .../20_util/function_objects/not_fn/version.cc         | 10 ++++++++++
>  2 files changed, 10 insertions(+), 6 deletions(-)
>  create mode 100644
> libstdc++-v3/testsuite/20_util/function_objects/not_fn/version.cc
>
> diff --git
> a/libstdc++-v3/testsuite/20_util/function_objects/not_fn/nttp.cc
> b/libstdc++-v3/testsuite/20_util/function_objects/not_fn/nttp.cc
> index d35d828f14c..d24ccf8a187 100644
> --- a/libstdc++-v3/testsuite/20_util/function_objects/not_fn/nttp.cc
> +++ b/libstdc++-v3/testsuite/20_util/function_objects/not_fn/nttp.cc
> @@ -2,12 +2,6 @@
>
>  // { dg-do run { target c++26 } }
>
> -#ifndef __cpp_lib_not_fn
> -# error "Feature test macro for not_fn is missing in <functional>"
> -#elif __cpp_lib_not_fn < 202306L
> -# error "Feature test macro for not_fn has wrong value in <functional>"
> -#endif
> -
>  #include <functional>
>  #include <testsuite_hooks.h>
>
> diff --git
> a/libstdc++-v3/testsuite/20_util/function_objects/not_fn/version.cc
> b/libstdc++-v3/testsuite/20_util/function_objects/not_fn/version.cc
> new file mode 100644
> index 00000000000..9a6343b9c43
> --- /dev/null
> +++ b/libstdc++-v3/testsuite/20_util/function_objects/not_fn/version.cc
> @@ -0,0 +1,10 @@
> +// { dg-do preprocess { target c++26 } }
> +// { dg-add-options no_pch }
> +
> +#include <functional>
> +
> +#ifndef __cpp_lib_not_fn
> +# error "Feature test macro for not_fn is missing in <functional>"
> +#elif __cpp_lib_not_fn < 202306L
> +# error "Feature test macro for not_fn has wrong value in <functional>"
> +#endif
> --
> 2.50.1
>
>

Reply via email to