[gcc(refs/users/aoliva/heads/testme)] more hostedlib notes

Alexandre Oliva aoliva@gcc.gnu.org
Mon Sep 2 20:41:06 GMT 2024


https://gcc.gnu.org/g:352f61e0d8d17ff1e7988f11fcbc8923d55b8ec7

commit 352f61e0d8d17ff1e7988f11fcbc8923d55b8ec7
Author: Alexandre Oliva <oliva@gnu.org>
Date:   Sat Aug 31 14:54:41 2024 -0300

    more hostedlib notes

Diff:
---
 gcc/testsuite/c-c++-common/analyzer/allocation-size-1.c              | 2 ++
 gcc/testsuite/c-c++-common/analyzer/allocation-size-2.c              | 1 +
 gcc/testsuite/c-c++-common/analyzer/allocation-size-3.c              | 1 +
 gcc/testsuite/c-c++-common/analyzer/allocation-size-4.c              | 2 ++
 gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-0.c           | 1 +
 gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-1.c           | 1 +
 gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-2.c           | 1 +
 gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-3.c           | 1 +
 gcc/testsuite/c-c++-common/analyzer/call-summaries-1.c               | 1 +
 gcc/testsuite/c-c++-common/analyzer/call-summaries-malloc.c          | 1 +
 gcc/testsuite/c-c++-common/analyzer/callbacks-1.c                    | 2 ++
 gcc/testsuite/c-c++-common/analyzer/callbacks-2.c                    | 2 ++
 gcc/testsuite/c-c++-common/analyzer/capacity-1.c                     | 1 +
 gcc/testsuite/c-c++-common/analyzer/capacity-2.c                     | 1 +
 gcc/testsuite/c-c++-common/analyzer/capacity-3.c                     | 1 +
 gcc/testsuite/c-c++-common/analyzer/compound-assignment-1.c          | 2 ++
 gcc/testsuite/c-c++-common/analyzer/data-model-14.c                  | 2 ++
 gcc/testsuite/c-c++-common/analyzer/data-model-20.c                  | 1 +
 gcc/testsuite/c-c++-common/analyzer/data-model-5d.c                  | 2 ++
 gcc/testsuite/c-c++-common/analyzer/disabling.c                      | 2 ++
 gcc/testsuite/c-c++-common/analyzer/dump-state.c                     | 2 ++
 gcc/testsuite/c-c++-common/analyzer/edges-2.c                        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/first-field-2.c                  | 2 ++
 gcc/testsuite/c-c++-common/analyzer/flex-with-call-summaries.c       | 1 +
 gcc/testsuite/c-c++-common/analyzer/flex-without-call-summaries.c    | 2 ++
 gcc/testsuite/c-c++-common/analyzer/flexible-array-member-1.c        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/function-ptr-2.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/function-ptr-3.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/function-ptr-4.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/gzio.c                           | 2 ++
 gcc/testsuite/c-c++-common/analyzer/imprecise-floating-point-1.c     | 1 +
 gcc/testsuite/c-c++-common/analyzer/leak-2.c                         | 2 ++
 gcc/testsuite/c-c++-common/analyzer/leak-3.c                         | 2 ++
 gcc/testsuite/c-c++-common/analyzer/leak-4.c                         | 2 ++
 .../c-c++-common/analyzer/loop-0-up-to-n-by-1-with-iter-obj.c        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/loop-3.c                         | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-3.c                       | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-5.c                       | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-CWE-401-example.c         | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-CWE-415-examples.c        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-CWE-416-examples.c        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-CWE-590-examples.c        | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-callbacks.c               | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-dce.c                     | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-dedupe-1.c                | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-in-loop.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-1.c                   | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-10.c                  | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-11.c                  | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-12.c                  | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-13a.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-2.c                   | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-3.c                   | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-4.c                   | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-5.c                   | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-6.c                   | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-7.c                   | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-ipa-9.c                   | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-macro-inline-events.c     | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-macro-separate-events.c   | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-many-paths-3.c            | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-meaning-1.c               | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-paths-1.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-paths-2.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-paths-3.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-paths-4.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-paths-5.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-paths-6.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-paths-7.c                 | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-paths-9-noexcept.c        | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-sarif-1.c                 | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-1a.c             | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-1b.c             | 1 +
 gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-2.c              | 2 ++
 gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-3.c              | 2 ++
 gcc/testsuite/c-c++-common/analyzer/out-of-bounds-1.c                | 2 ++
 gcc/testsuite/c-c++-common/analyzer/out-of-bounds-2.c                | 2 ++
 gcc/testsuite/c-c++-common/analyzer/out-of-bounds-diagram-3.c        | 1 +
 gcc/testsuite/c-c++-common/analyzer/out-of-bounds-diagram-8.c        | 1 +
 gcc/testsuite/c-c++-common/analyzer/paths-3.c                        | 1 +
 gcc/testsuite/c-c++-common/analyzer/paths-6.c                        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/paths-7.c                        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/pr103526.c                       | 2 ++
 gcc/testsuite/c-c++-common/analyzer/pr106539.c                       | 2 ++
 gcc/testsuite/c-c++-common/analyzer/pr93290.c                        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/pr94399.c                        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/pr94851-1.c                      | 1 +
 gcc/testsuite/c-c++-common/analyzer/pr94851-2.c                      | 1 +
 gcc/testsuite/c-c++-common/analyzer/pr94851-4.c                      | 1 +
 gcc/testsuite/c-c++-common/analyzer/pr97608.c                        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/pr98918.c                        | 1 +
 gcc/testsuite/c-c++-common/analyzer/pr99716-2.c                      | 2 ++
 gcc/testsuite/c-c++-common/analyzer/pr99716-3.c                      | 2 ++
 gcc/testsuite/c-c++-common/analyzer/pragma-1.c                       | 2 ++
 gcc/testsuite/c-c++-common/analyzer/pragma-2.c                       | 1 +
 gcc/testsuite/c-c++-common/analyzer/sarif-path-role.c                | 1 +
 gcc/testsuite/c-c++-common/analyzer/scope-1.c                        | 2 ++
 gcc/testsuite/c-c++-common/analyzer/strndup-1.c                      | 1 +
 gcc/testsuite/c-c++-common/analyzer/taint-realloc.c                  | 2 ++
 gcc/testsuite/c-c++-common/analyzer/use-after-free-3.c               | 2 ++
 gcc/testsuite/c-c++-common/analyzer/zlib-4.c                         | 2 ++
 .../c-c++-common/goacc/kernels-counter-vars-function-scope.c         | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop-2.c                    | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop-3.c                    | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop-data-2.c               | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit-2.c    | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit.c      | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop-data-update.c          | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop-data.c                 | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop-g.c                    | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop-mod-not-zero.c         | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop-n.c                    | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-loop.c                      | 1 +
 gcc/testsuite/c-c++-common/goacc/kernels-one-counter-var.c           | 1 +
 .../c-c++-common/goacc/kernels-parallel-loop-data-enter-exit.c       | 1 +
 gcc/testsuite/c-c++-common/gomp/pr103642.c                           | 1 +
 gcc/testsuite/c-c++-common/gomp/target-implicit-map-2.c              | 2 ++
 gcc/testsuite/c-c++-common/simulate-thread/bitfields-4.c             | 1 +
 gcc/testsuite/c-c++-common/tm/malloc.c                               | 1 +
 gcc/testsuite/g++.dg/abi/mangle36.C                                  | 1 +
 gcc/testsuite/g++.dg/abi/mangle40.C                                  | 1 +
 gcc/testsuite/g++.dg/abi/mangle41.C                                  | 1 +
 gcc/testsuite/g++.dg/analyzer/cstdlib.C                              | 2 ++
 .../analyzer/fanalyzer-show-events-in-system-headers-default.C       | 1 +
 .../g++.dg/analyzer/fanalyzer-show-events-in-system-headers-no.C     | 1 +
 gcc/testsuite/g++.dg/analyzer/malloc.C                               | 1 +
 gcc/testsuite/g++.dg/analyzer/new-vs-malloc.C                        | 2 ++
 gcc/testsuite/g++.dg/analyzer/placement-new-size.C                   | 1 +
 gcc/testsuite/g++.dg/analyzer/vfunc-3.C                              | 2 ++
 gcc/testsuite/g++.dg/analyzer/vfunc-5.C                              | 1 +
 gcc/testsuite/g++.dg/cdce3.C                                         | 1 +
 gcc/testsuite/g++.dg/contracts/contracts-post7.C                     | 1 +
 gcc/testsuite/g++.dg/contracts/pr110159.C                            | 1 +
 gcc/testsuite/g++.dg/contracts/pr115434.C                            | 1 +
 .../g++.dg/coroutines/coro-bad-gro-00-class-gro-scalar-return.C      | 2 ++
 .../g++.dg/coroutines/coro-bad-gro-01-void-gro-non-class-coro.C      | 2 ++
 gcc/testsuite/g++.dg/coroutines/pr110635.C                           | 1 +
 gcc/testsuite/g++.dg/coroutines/pr110871.C                           | 2 ++
 gcc/testsuite/g++.dg/coroutines/pr110872.C                           | 1 +
 gcc/testsuite/g++.dg/coroutines/symmetric-transfer-00-basic.C        | 1 +
 .../g++.dg/coroutines/torture/co-yield-03-tmpl-nondependent.C        | 1 +
 gcc/testsuite/g++.dg/cpp/pr80005.C                                   | 1 +
 gcc/testsuite/g++.dg/cpp0x/lambda/lambda-std-function.C              | 1 +
 gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this8.C                     | 1 +
 gcc/testsuite/g++.dg/cpp0x/pr70887.C                                 | 1 +
 gcc/testsuite/g++.dg/cpp0x/udlit-extended-id-1.C                     | 2 ++
 gcc/testsuite/g++.dg/cpp1y/feat-cxx14.C                              | 1 +
 gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic2.C                | 1 +
 gcc/testsuite/g++.dg/cpp1z/constexpr-asm-1.C                         | 1 +
 gcc/testsuite/g++.dg/cpp1z/constexpr-asm-3.C                         | 1 +
 gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C                              | 1 +
 gcc/testsuite/g++.dg/cpp23/ext-floating12.C                          | 1 +
 gcc/testsuite/g++.dg/cpp23/feat-cxx2b.C                              | 1 +
 gcc/testsuite/g++.dg/cpp26/constexpr-new2.C                          | 1 +
 gcc/testsuite/g++.dg/cpp26/constexpr-voidptr1.C                      | 1 +
 gcc/testsuite/g++.dg/cpp26/feat-cxx26.C                              | 1 +
 gcc/testsuite/g++.dg/cpp2a/destroying-delete5.C                      | 1 +
 gcc/testsuite/g++.dg/cpp2a/feat-cxx2a.C                              | 1 +
 gcc/testsuite/g++.dg/diagnostic/missing-header-pr110164.C            | 1 +
 gcc/testsuite/g++.dg/expr/anew1.C                                    | 2 ++
 gcc/testsuite/g++.dg/expr/anew2.C                                    | 2 ++
 gcc/testsuite/g++.dg/expr/anew3.C                                    | 2 ++
 gcc/testsuite/g++.dg/expr/anew4.C                                    | 2 ++
 gcc/testsuite/g++.dg/ext/builtin10.C                                 | 1 +
 gcc/testsuite/g++.dg/ext/cleanup-10.C                                | 1 +
 gcc/testsuite/g++.dg/ext/cleanup-11.C                                | 1 +
 gcc/testsuite/g++.dg/ext/cleanup-5.C                                 | 1 +
 gcc/testsuite/g++.dg/ext/cleanup-8.C                                 | 1 +
 gcc/testsuite/g++.dg/ext/cleanup-9.C                                 | 1 +
 gcc/testsuite/g++.dg/ext/is_invocable2.C                             | 1 +
 gcc/testsuite/g++.dg/goacc/pr107028-2.C                              | 1 +
 gcc/testsuite/g++.dg/gomp/has_device_addr-non-lvalue-1.C             | 1 +
 gcc/testsuite/g++.dg/gomp/ind-base-3.C                               | 2 ++
 gcc/testsuite/g++.dg/gomp/map-assignment-1.C                         | 2 ++
 gcc/testsuite/g++.dg/gomp/map-lvalue-ref-1.C                         | 2 ++
 gcc/testsuite/g++.dg/gomp/map-ptrmem-1.C                             | 2 ++
 gcc/testsuite/g++.dg/gomp/map-ptrmem-2.C                             | 2 ++
 gcc/testsuite/g++.dg/gomp/map-static-cast-lvalue-1.C                 | 2 ++
 gcc/testsuite/g++.dg/gomp/map-ternary-1.C                            | 2 ++
 gcc/testsuite/g++.dg/gomp/member-array-2.C                           | 2 ++
 gcc/testsuite/g++.dg/gomp/pr71910.C                                  | 1 +
 gcc/testsuite/g++.dg/gomp/pr91118-1.C                                | 1 +
 gcc/testsuite/g++.dg/gomp/sink-2.C                                   | 1 +
 gcc/testsuite/g++.dg/gomp/target-lambda-2.C                          | 2 ++
 gcc/testsuite/g++.dg/gomp/target-this-3.C                            | 2 ++
 gcc/testsuite/g++.dg/gomp/target-this-4.C                            | 2 ++
 gcc/testsuite/g++.dg/gomp/tile-1.C                                   | 1 +
 gcc/testsuite/g++.dg/gomp/tile-2.C                                   | 1 +
 gcc/testsuite/g++.dg/gomp/unroll-1.C                                 | 1 +
 gcc/testsuite/g++.dg/gomp/unroll-2.C                                 | 1 +
 gcc/testsuite/g++.dg/gomp/unroll-3.C                                 | 1 +
 gcc/testsuite/g++.dg/graphite/id-1.C                                 | 2 ++
 gcc/testsuite/g++.dg/graphite/pr42130.C                              | 5 +++--
 gcc/testsuite/g++.dg/init/new11.C                                    | 1 +
 gcc/testsuite/g++.dg/init/value3.C                                   | 1 +
 gcc/testsuite/g++.dg/lto/pr66180_0.C                                 | 2 ++
 gcc/testsuite/g++.dg/lto/pr80287_0.C                                 | 1 +
 gcc/testsuite/g++.dg/modules/hello-2_a.C                             | 1 +
 gcc/testsuite/g++.dg/modules/hello-2_b.C                             | 1 +
 gcc/testsuite/g++.dg/modules/p1689-2.C                               | 1 +
 gcc/testsuite/g++.dg/modules/pr99023_a.X                             | 1 +
 gcc/testsuite/g++.dg/modules/pr99166_a.X                             | 1 +
 gcc/testsuite/g++.dg/modules/pr99166_b.C                             | 2 ++
 gcc/testsuite/g++.dg/modules/pr99425-2_a.X                           | 1 +
 gcc/testsuite/g++.dg/modules/pr99425-2_b.X                           | 1 +
 gcc/testsuite/g++.dg/modules/xtreme-header-7_a.H                     | 1 +
 gcc/testsuite/g++.dg/modules/xtreme-header-7_b.C                     | 1 +
 gcc/testsuite/g++.dg/opt/builtins2.C                                 | 1 +
 gcc/testsuite/g++.dg/opt/pr103989.C                                  | 1 +
 gcc/testsuite/g++.dg/opt/pr110879.C                                  | 1 +
 gcc/testsuite/g++.dg/opt/pr65074.C                                   | 1 +
 gcc/testsuite/g++.dg/opt/pr66119.C                                   | 1 +
 gcc/testsuite/g++.dg/opt/pr80385.C                                   | 1 +
 gcc/testsuite/g++.dg/opt/pr94223.C                                   | 1 +
 gcc/testsuite/g++.dg/other/i386-1.C                                  | 1 +
 gcc/testsuite/g++.dg/other/i386-11.C                                 | 1 +
 gcc/testsuite/g++.dg/other/i386-2.C                                  | 1 +
 gcc/testsuite/g++.dg/other/i386-3.C                                  | 1 +
 gcc/testsuite/g++.dg/other/i386-4.C                                  | 1 +
 gcc/testsuite/g++.dg/other/i386-7.C                                  | 1 +
 gcc/testsuite/g++.dg/other/i386-8.C                                  | 1 +
 gcc/testsuite/g++.dg/other/mmintrin.C                                | 1 +
 gcc/testsuite/g++.dg/other/pr34435.C                                 | 1 +
 gcc/testsuite/g++.dg/other/pr40446.C                                 | 1 +
 gcc/testsuite/g++.dg/other/pr49133.C                                 | 1 +
 gcc/testsuite/g++.dg/pch/system-1.Hs                                 | 2 ++
 gcc/testsuite/g++.dg/pch/system-2.Hs                                 | 2 ++
 gcc/testsuite/g++.dg/pr80481.C                                       | 1 +
 gcc/testsuite/g++.dg/tm/inherit2.C                                   | 1 +
 gcc/testsuite/g++.dg/tm/pr46270.C                                    | 1 +
 gcc/testsuite/g++.dg/torture/pr10148.C                               | 1 +
 gcc/testsuite/g++.dg/torture/pr86763.C                               | 1 +
 gcc/testsuite/g++.dg/torture/pr91334.C                               | 1 +
 gcc/testsuite/g++.dg/torture/pr91606.C                               | 1 +
 gcc/testsuite/g++.dg/tree-ssa/copyprop.C                             | 1 +
 gcc/testsuite/g++.dg/tree-ssa/initlist-opt5.C                        | 1 +
 gcc/testsuite/g++.dg/tree-ssa/loop-split-1.C                         | 2 ++
 gcc/testsuite/g++.dg/tree-ssa/pr102216-2.C                           | 2 ++
 gcc/testsuite/g++.dg/tree-ssa/pr109849.C                             | 1 +
 gcc/testsuite/g++.dg/tree-ssa/pr20458.C                              | 1 +
 gcc/testsuite/g++.dg/uninit-pr105937.C                               | 1 +
 gcc/testsuite/g++.dg/vect/pr102421.cc                                | 1 +
 gcc/testsuite/g++.dg/vect/pr105053.cc                                | 1 +
 gcc/testsuite/g++.dg/vect/pr33426-ivdep-4.cc                         | 1 +
 gcc/testsuite/g++.dg/vect/pr64410.cc                                 | 1 +
 gcc/testsuite/g++.dg/vect/slp-pr87105.cc                             | 1 +
 gcc/testsuite/g++.dg/vect/slp-pr98855.cc                             | 1 +
 gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc                    | 1 +
 gcc/testsuite/g++.dg/warn/Wdangling-reference14.C                    | 1 +
 gcc/testsuite/g++.dg/warn/Wdangling-reference17.C                    | 1 +
 gcc/testsuite/g++.dg/warn/Wparentheses-34.C                          | 1 +
 gcc/testsuite/g++.dg/warn/Wsystem-headers1a.C                        | 1 +
 gcc/testsuite/g++.dg/warn/Wuninitialized-pr111123-1.C                | 1 +
 gcc/testsuite/g++.dg/warn/huge-val1.C                                | 1 +
 gcc/testsuite/g++.old-deja/g++.abi/arraynew.C                        | 1 +
 gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C                         | 2 ++
 gcc/testsuite/g++.old-deja/g++.brendan/new3.C                        | 2 ++
 gcc/testsuite/g++.old-deja/g++.eh/new1.C                             | 1 +
 gcc/testsuite/g++.old-deja/g++.eh/new2.C                             | 1 +
 gcc/testsuite/g++.old-deja/g++.jason/2371.C                          | 1 +
 gcc/testsuite/g++.old-deja/g++.jason/template44.C                    | 2 ++
 gcc/testsuite/g++.old-deja/g++.law/arm13.C                           | 2 ++
 gcc/testsuite/g++.old-deja/g++.law/scope2.C                          | 2 ++
 gcc/testsuite/g++.old-deja/g++.law/weak.C                            | 2 ++
 gcc/testsuite/g++.old-deja/g++.mike/eh47.C                           | 1 +
 gcc/testsuite/g++.old-deja/g++.mike/ns15.C                           | 1 +
 gcc/testsuite/g++.old-deja/g++.mike/p710.C                           | 2 ++
 gcc/testsuite/g++.old-deja/g++.mike/p9706.C                          | 1 +
 gcc/testsuite/g++.old-deja/g++.oliva/new1.C                          | 2 ++
 gcc/testsuite/g++.old-deja/g++.other/delete8.C                       | 2 ++
 gcc/testsuite/g++.target/i386/avx-pr54700-1.C                        | 1 +
 gcc/testsuite/g++.target/i386/avx-pr54700-2.C                        | 1 +
 gcc/testsuite/g++.target/i386/avx2-pr54700-1.C                       | 1 +
 gcc/testsuite/g++.target/i386/avx2-pr54700-2.C                       | 1 +
 gcc/testsuite/g++.target/i386/avx512bw-pr96246-2.C                   | 1 +
 gcc/testsuite/g++.target/i386/avx512vl-pr54700-1a.C                  | 1 +
 gcc/testsuite/g++.target/i386/avx512vl-pr54700-1b.C                  | 1 +
 gcc/testsuite/g++.target/i386/avx512vl-pr54700-2a.C                  | 1 +
 gcc/testsuite/g++.target/i386/avx512vl-pr54700-2b.C                  | 1 +
 gcc/testsuite/g++.target/i386/avx512vl-pr96246-2.C                   | 1 +
 gcc/testsuite/g++.target/i386/mvc4.C                                 | 1 +
 gcc/testsuite/g++.target/i386/pr100885.C                             | 1 +
 gcc/testsuite/g++.target/i386/pr103750-fwprop-1.C                    | 1 +
 gcc/testsuite/g++.target/i386/pr105593.C                             | 1 +
 gcc/testsuite/g++.target/i386/pr105638.C                             | 1 +
 gcc/testsuite/g++.target/i386/pr110170.C                             | 2 ++
 gcc/testsuite/g++.target/i386/pr112443.C                             | 1 +
 gcc/testsuite/g++.target/i386/pr113560.C                             | 1 +
 gcc/testsuite/g++.target/i386/pr80566-1.C                            | 1 +
 gcc/testsuite/g++.target/i386/pr80566-2.C                            | 1 +
 gcc/testsuite/g++.target/i386/pr88152.C                              | 1 +
 gcc/testsuite/g++.target/i386/pr88998.C                              | 1 +
 gcc/testsuite/g++.target/i386/pr94046-1.C                            | 1 +
 gcc/testsuite/g++.target/i386/pr94046-2.C                            | 1 +
 gcc/testsuite/g++.target/i386/sse4_1-pr54700-1.C                     | 1 +
 gcc/testsuite/g++.target/i386/sse4_1-pr54700-2.C                     | 1 +
 296 files changed, 403 insertions(+), 2 deletions(-)

diff --git a/gcc/testsuite/c-c++-common/analyzer/allocation-size-1.c b/gcc/testsuite/c-c++-common/analyzer/allocation-size-1.c
index 5b4e73927825..a9d375d2edc2 100644
--- a/gcc/testsuite/c-c++-common/analyzer/allocation-size-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/allocation-size-1.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include <stdio.h>
 #include <stdint.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/allocation-size-2.c b/gcc/testsuite/c-c++-common/analyzer/allocation-size-2.c
index a9f92cf2d02c..cee9208c8a8a 100644
--- a/gcc/testsuite/c-c++-common/analyzer/allocation-size-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/allocation-size-2.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fanalyzer-fine-grained" }
+   { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
    -fanalyzer-fine-grained is currently required; see PR analyzer/107851.  */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/allocation-size-3.c b/gcc/testsuite/c-c++-common/analyzer/allocation-size-3.c
index 4e99e881dff7..9d06d4b30d21 100644
--- a/gcc/testsuite/c-c++-common/analyzer/allocation-size-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/allocation-size-3.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fanalyzer-fine-grained" }
+   { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
    -fanalyzer-fine-grained is currently required; see PR analyzer/107851.  */
 
 /* { dg-additional-options -Wno-analyzer-out-of-bounds } */
diff --git a/gcc/testsuite/c-c++-common/analyzer/allocation-size-4.c b/gcc/testsuite/c-c++-common/analyzer/allocation-size-4.c
index 7d07ba67316c..3dbf13e40123 100644
--- a/gcc/testsuite/c-c++-common/analyzer/allocation-size-4.c
+++ b/gcc/testsuite/c-c++-common/analyzer/allocation-size-4.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include <stdint.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-0.c b/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-0.c
index acc41567f48d..c1a3ca753e69 100644
--- a/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-0.c
+++ b/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-0.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fdiagnostics-show-line-numbers -fdiagnostics-path-format=inline-events -fdiagnostics-show-caret -fanalyzer-verbosity=0" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 /* { dg-enable-nn-line-numbers "" } */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-1.c b/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-1.c
index 27b885dc9554..ac8df5f688ca 100644
--- a/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-1.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fdiagnostics-show-line-numbers -fdiagnostics-path-format=inline-events -fdiagnostics-show-caret -fanalyzer-verbosity=1" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 /* { dg-enable-nn-line-numbers "" } */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-2.c b/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-2.c
index d2dc522cc1aa..e03e3cdbe59f 100644
--- a/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-2.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fdiagnostics-show-line-numbers -fdiagnostics-path-format=inline-events -fdiagnostics-show-caret -fanalyzer-verbosity=2" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 /* { dg-enable-nn-line-numbers "" } */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-3.c b/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-3.c
index 3661f1fd485b..dd8226f51a7c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/analyzer-verbosity-3.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fdiagnostics-show-line-numbers -fdiagnostics-path-format=inline-events -fdiagnostics-show-caret -fanalyzer-verbosity=3" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 /* { dg-enable-nn-line-numbers "" } */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/call-summaries-1.c b/gcc/testsuite/c-c++-common/analyzer/call-summaries-1.c
index a64b230cef32..643a31642915 100644
--- a/gcc/testsuite/c-c++-common/analyzer/call-summaries-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/call-summaries-1.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fanalyzer-call-summaries" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/call-summaries-malloc.c b/gcc/testsuite/c-c++-common/analyzer/call-summaries-malloc.c
index 15c4c2e8fccc..6522c37e108b 100644
--- a/gcc/testsuite/c-c++-common/analyzer/call-summaries-malloc.c
+++ b/gcc/testsuite/c-c++-common/analyzer/call-summaries-malloc.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fanalyzer-call-summaries --param analyzer-min-snodes-for-call-summary=0" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 /* There need to be at least two calls to a function for the
    call-summarization code to be used.
diff --git a/gcc/testsuite/c-c++-common/analyzer/callbacks-1.c b/gcc/testsuite/c-c++-common/analyzer/callbacks-1.c
index 52c8fde540a7..763027c714ae 100644
--- a/gcc/testsuite/c-c++-common/analyzer/callbacks-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/callbacks-1.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 /* Reproducer for PR analyzer/97258: we should report the double-free
    inside a static callback if the callback escapes.  */
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/callbacks-2.c b/gcc/testsuite/c-c++-common/analyzer/callbacks-2.c
index 98915ee617bd..772187311b76 100644
--- a/gcc/testsuite/c-c++-common/analyzer/callbacks-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/callbacks-2.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 /* Reproducer for PR analyzer/97258: we should report the double-free
    inside a static callback if the callback is accessible via a global
    initializer.  */
diff --git a/gcc/testsuite/c-c++-common/analyzer/capacity-1.c b/gcc/testsuite/c-c++-common/analyzer/capacity-1.c
index cfee1159826a..76905a623f21 100644
--- a/gcc/testsuite/c-c++-common/analyzer/capacity-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/capacity-1.c
@@ -1,5 +1,6 @@
 /* { dg-require-effective-target alloca } */
 /* { dg-skip-if "" { powerpc*-*-aix* } } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 #include "../../gcc.dg/analyzer/analyzer-decls.h"
diff --git a/gcc/testsuite/c-c++-common/analyzer/capacity-2.c b/gcc/testsuite/c-c++-common/analyzer/capacity-2.c
index fbdb61a991e0..7d2de4ed8ad6 100644
--- a/gcc/testsuite/c-c++-common/analyzer/capacity-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/capacity-2.c
@@ -1,4 +1,5 @@
 /* { dg-skip-if "" { powerpc*-*-aix* } } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } } */
 
 #include <stdlib.h>
 #include "analyzer-decls.h"
diff --git a/gcc/testsuite/c-c++-common/analyzer/capacity-3.c b/gcc/testsuite/c-c++-common/analyzer/capacity-3.c
index c099ff5725d8..2fcf70791f4c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/capacity-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/capacity-3.c
@@ -1,4 +1,5 @@
 /* { dg-require-effective-target alloca } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } } */
 
 #include <stdlib.h>
 #include "analyzer-decls.h"
diff --git a/gcc/testsuite/c-c++-common/analyzer/compound-assignment-1.c b/gcc/testsuite/c-c++-common/analyzer/compound-assignment-1.c
index b7389e280837..9ff95d35d18d 100644
--- a/gcc/testsuite/c-c++-common/analyzer/compound-assignment-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/compound-assignment-1.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 struct ptr_wrapper
diff --git a/gcc/testsuite/c-c++-common/analyzer/data-model-14.c b/gcc/testsuite/c-c++-common/analyzer/data-model-14.c
index 1dbcb7011230..9400ae2fd7ab 100644
--- a/gcc/testsuite/c-c++-common/analyzer/data-model-14.c
+++ b/gcc/testsuite/c-c++-common/analyzer/data-model-14.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void *global_ptr;
diff --git a/gcc/testsuite/c-c++-common/analyzer/data-model-20.c b/gcc/testsuite/c-c++-common/analyzer/data-model-20.c
index 59f62853ad6a..dd7996bd1605 100644
--- a/gcc/testsuite/c-c++-common/analyzer/data-model-20.c
+++ b/gcc/testsuite/c-c++-common/analyzer/data-model-20.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-Wno-analyzer-too-complex" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/data-model-5d.c b/gcc/testsuite/c-c++-common/analyzer/data-model-5d.c
index b4d77a939bc9..a86d5060c7a6 100644
--- a/gcc/testsuite/c-c++-common/analyzer/data-model-5d.c
+++ b/gcc/testsuite/c-c++-common/analyzer/data-model-5d.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 /* A toy re-implementation of CPython's object model.  */
 
 #include <stddef.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/disabling.c b/gcc/testsuite/c-c++-common/analyzer/disabling.c
index a696d1e021e0..6f3a50e11960 100644
--- a/gcc/testsuite/c-c++-common/analyzer/disabling.c
+++ b/gcc/testsuite/c-c++-common/analyzer/disabling.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 /* Verify that we can override -fanalyzer with -fno-analyzer.  */
 /* { dg-additional-options "-fno-analyzer" } */
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/dump-state.c b/gcc/testsuite/c-c++-common/analyzer/dump-state.c
index 618a5a9d7810..09490be0cc32 100644
--- a/gcc/testsuite/c-c++-common/analyzer/dump-state.c
+++ b/gcc/testsuite/c-c++-common/analyzer/dump-state.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 /* Verify that __analyzer_dump_state works as expected.  */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/edges-2.c b/gcc/testsuite/c-c++-common/analyzer/edges-2.c
index 847a70883fb6..7e4543c24c30 100644
--- a/gcc/testsuite/c-c++-common/analyzer/edges-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/edges-2.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 int foo ();
diff --git a/gcc/testsuite/c-c++-common/analyzer/first-field-2.c b/gcc/testsuite/c-c++-common/analyzer/first-field-2.c
index 8661e6e9efd0..52b9df23ae4e 100644
--- a/gcc/testsuite/c-c++-common/analyzer/first-field-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/first-field-2.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 /* A toy re-implementation of CPython's object model.  */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/flex-with-call-summaries.c b/gcc/testsuite/c-c++-common/analyzer/flex-with-call-summaries.c
index cbb953ad06ac..b4124c963d18 100644
--- a/gcc/testsuite/c-c++-common/analyzer/flex-with-call-summaries.c
+++ b/gcc/testsuite/c-c++-common/analyzer/flex-with-call-summaries.c
@@ -7,6 +7,7 @@
 /* { dg-additional-options "-Wno-analyzer-too-complex" } */
 /* { dg-additional-options "-Wno-analyzer-symbol-too-complex" } */
 /* { dg-additional-options "-D_POSIX_SOURCE" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 /* A lexical scanner generated by flex */
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/flex-without-call-summaries.c b/gcc/testsuite/c-c++-common/analyzer/flex-without-call-summaries.c
index c6ecb25d25d5..092d78486219 100644
--- a/gcc/testsuite/c-c++-common/analyzer/flex-without-call-summaries.c
+++ b/gcc/testsuite/c-c++-common/analyzer/flex-without-call-summaries.c
@@ -6,6 +6,8 @@
 /* { dg-additional-options "-Wno-analyzer-too-complex" } */
 /* { dg-additional-options "-D_POSIX_SOURCE" } */
 
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 
 /* A lexical scanner generated by flex */
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/flexible-array-member-1.c b/gcc/testsuite/c-c++-common/analyzer/flexible-array-member-1.c
index d794336198b8..72df154a85a6 100644
--- a/gcc/testsuite/c-c++-common/analyzer/flexible-array-member-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/flexible-array-member-1.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include <string.h>
 #include "../../gcc.dg/analyzer/analyzer-decls.h"
diff --git a/gcc/testsuite/c-c++-common/analyzer/function-ptr-2.c b/gcc/testsuite/c-c++-common/analyzer/function-ptr-2.c
index 0a1e845d6c55..76f5bd0c2455 100644
--- a/gcc/testsuite/c-c++-common/analyzer/function-ptr-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/function-ptr-2.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include "../../gcc.dg/analyzer/analyzer-decls.h"
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/function-ptr-3.c b/gcc/testsuite/c-c++-common/analyzer/function-ptr-3.c
index 348ee4a0cb3f..62ba89ee3d96 100644
--- a/gcc/testsuite/c-c++-common/analyzer/function-ptr-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/function-ptr-3.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 typedef void *(*alloc_func_t) (size_t);
diff --git a/gcc/testsuite/c-c++-common/analyzer/function-ptr-4.c b/gcc/testsuite/c-c++-common/analyzer/function-ptr-4.c
index 016351a83f6b..1ba080d64334 100644
--- a/gcc/testsuite/c-c++-common/analyzer/function-ptr-4.c
+++ b/gcc/testsuite/c-c++-common/analyzer/function-ptr-4.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 /* Test to see if the analyzer detect and analyze calls via 
    function pointers or not.  */
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/gzio.c b/gcc/testsuite/c-c++-common/analyzer/gzio.c
index 54efa77d0561..43511704e7c3 100644
--- a/gcc/testsuite/c-c++-common/analyzer/gzio.c
+++ b/gcc/testsuite/c-c++-common/analyzer/gzio.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 typedef struct z_stream_s {
   unsigned char *next_out;
diff --git a/gcc/testsuite/c-c++-common/analyzer/imprecise-floating-point-1.c b/gcc/testsuite/c-c++-common/analyzer/imprecise-floating-point-1.c
index cbe26589db00..b093a3c4d2ab 100644
--- a/gcc/testsuite/c-c++-common/analyzer/imprecise-floating-point-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/imprecise-floating-point-1.c
@@ -1,4 +1,5 @@
 /* { dg-require-effective-target alloca } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/leak-2.c b/gcc/testsuite/c-c++-common/analyzer/leak-2.c
index d12850cdc6a5..3bba4132a3c3 100644
--- a/gcc/testsuite/c-c++-common/analyzer/leak-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/leak-2.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include "../../gcc.dg/analyzer/analyzer-decls.h"
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/leak-3.c b/gcc/testsuite/c-c++-common/analyzer/leak-3.c
index d11cc03b36f0..a386d887f332 100644
--- a/gcc/testsuite/c-c++-common/analyzer/leak-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/leak-3.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 /* Reduced from Juliet 1.3's CWE415_Double_Free__malloc_free_char_67a.c
diff --git a/gcc/testsuite/c-c++-common/analyzer/leak-4.c b/gcc/testsuite/c-c++-common/analyzer/leak-4.c
index ba5f2d26f4b4..5ee3c310d5b6 100644
--- a/gcc/testsuite/c-c++-common/analyzer/leak-4.c
+++ b/gcc/testsuite/c-c++-common/analyzer/leak-4.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 /* Various tests of memory leak detection.  */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/loop-0-up-to-n-by-1-with-iter-obj.c b/gcc/testsuite/c-c++-common/analyzer/loop-0-up-to-n-by-1-with-iter-obj.c
index 1b657697ef40..e169cd44aa17 100644
--- a/gcc/testsuite/c-c++-common/analyzer/loop-0-up-to-n-by-1-with-iter-obj.c
+++ b/gcc/testsuite/c-c++-common/analyzer/loop-0-up-to-n-by-1-with-iter-obj.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 #include "../../gcc.dg/analyzer/analyzer-decls.h"
diff --git a/gcc/testsuite/c-c++-common/analyzer/loop-3.c b/gcc/testsuite/c-c++-common/analyzer/loop-3.c
index 0bcf70746232..a07f0f4ce01c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/loop-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/loop-3.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void test(int c)
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-3.c b/gcc/testsuite/c-c++-common/analyzer/malloc-3.c
index f4e647b25aa2..becdafa7082c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-3.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 /* Don't complain about leaks due to exiting from "main".  */
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-5.c b/gcc/testsuite/c-c++-common/analyzer/malloc-5.c
index 3b2a4527ab58..af7aca8e307c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-5.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-5.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void test (void)
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-401-example.c b/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-401-example.c
index cfb5e86260c1..4caa5a001848 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-401-example.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-401-example.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 /* Example adapted from https://cwe.mitre.org/data/definitions/401.html
    which states "Copyright © 2006–2022, The MITRE Corporation. CWE, CWSS, CWRAF, and the CWE logo are trademarks of The MITRE Corporation."
    and which has this on:
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-415-examples.c b/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-415-examples.c
index 51d878a17c36..4fb2788cf7b2 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-415-examples.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-415-examples.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 /* Example adapted from https://cwe.mitre.org/data/definitions/415.html
    which states "Copyright © 2006–2022, The MITRE Corporation. CWE, CWSS, CWRAF, and the CWE logo are trademarks of The MITRE Corporation."
    and which has this on:
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-416-examples.c b/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-416-examples.c
index 3f5e5e260335..bf8878c4ec57 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-416-examples.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-416-examples.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 /* Examples adapted from https://cwe.mitre.org/data/definitions/416.html
    which states "Copyright © 2006–2022, The MITRE Corporation. CWE, CWSS, CWRAF, and the CWE logo are trademarks of The MITRE Corporation."
    and which has this on:
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-590-examples.c b/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-590-examples.c
index 11ab017c12ae..f9d2da120907 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-590-examples.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-CWE-590-examples.c
@@ -1,5 +1,6 @@
 /* { dg-additional-options "-Wno-free-nonheap-object" } */
 /* { dg-require-effective-target size32plus } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 
 /* Examples adapted from https://cwe.mitre.org/data/definitions/590.html
    which states "Copyright © 2006–2022, The MITRE Corporation. CWE, CWSS, CWRAF, and the CWE logo are trademarks of The MITRE Corporation."
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-callbacks.c b/gcc/testsuite/c-c++-common/analyzer/malloc-callbacks.c
index ccd6c01194f3..0ba4f3824c62 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-callbacks.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-callbacks.c
@@ -1,4 +1,5 @@
 /* { dg-require-effective-target alloca } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-dce.c b/gcc/testsuite/c-c++-common/analyzer/malloc-dce.c
index 1b4b8788b86b..7f5ec67877f4 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-dce.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-dce.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-O2" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-dedupe-1.c b/gcc/testsuite/c-c++-common/analyzer/malloc-dedupe-1.c
index 233ab485b5af..8653c67b08b5 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-dedupe-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-dedupe-1.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 extern void foo (void);
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-in-loop.c b/gcc/testsuite/c-c++-common/analyzer/malloc-in-loop.c
index b10715770243..e7179f09a1d1 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-in-loop.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-in-loop.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include "../../gcc.dg/analyzer/analyzer-decls.h"
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-1.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-1.c
index ad536ce5f02f..ee6e0e01876c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-1.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void *
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-10.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-10.c
index f3a5be51ff10..e3d4f6a3dee7 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-10.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-10.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-11.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-11.c
index 60501034bc32..c4e6e18bdf2a 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-11.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-11.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 /* { dg-additional-options "-fdiagnostics-show-line-numbers -fdiagnostics-path-format=inline-events -fdiagnostics-show-caret" } */
 /* { dg-enable-nn-line-numbers "" } */
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-12.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-12.c
index 3813c9ae45ea..6bdbcc47672f 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-12.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-12.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void recursive_free (void *ptr)
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-13a.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-13a.c
index d74ef59c7cf3..618a36cbd665 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-13a.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-13a.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 /* { dg-additional-options "-fanalyzer-verbosity=1" } */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-2.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-2.c
index 800dd63a031a..f2496c30553c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-2.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fanalyzer-verbosity=1" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-3.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-3.c
index 3dcfae8f0a29..7ff42b814400 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-3.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void *
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-4.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-4.c
index bd03d607872e..535979c7e0a6 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-4.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-4.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 static void calls_free(int *q)
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-5.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-5.c
index ca8e6a511f5e..5c1cc1a0ef42 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-5.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-5.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 static int *calls_malloc(void)
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-6.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-6.c
index 62f8b55c3643..ad22a365fee0 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-6.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-6.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void *
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-7.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-7.c
index 1fe70ddc8b2c..b80ae0359889 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-7.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-7.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 /**************************************************************************/
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-9.c b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-9.c
index a0c78fd6c4ec..455f6ec82c49 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-9.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-ipa-9.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fdiagnostics-path-format=none -fanalyzer-verbosity=1" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-macro-inline-events.c b/gcc/testsuite/c-c++-common/analyzer/malloc-macro-inline-events.c
index 8620bc919a5b..8e71c4144cd0 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-macro-inline-events.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-macro-inline-events.c
@@ -1,6 +1,7 @@
 /* Test path-printing in the face of macros.  */
 
 /* { dg-additional-options "-fdiagnostics-show-line-numbers -fdiagnostics-path-format=inline-events -fdiagnostics-show-caret" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 /* { dg-enable-nn-line-numbers "" } */
 
 #include "malloc-macro.h"
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-macro-separate-events.c b/gcc/testsuite/c-c++-common/analyzer/malloc-macro-separate-events.c
index 647b29c3aa40..2ab169e7e03e 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-macro-separate-events.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-macro-separate-events.c
@@ -1,6 +1,7 @@
 /* Test path-printing in the face of macros.  */
 
 /* { dg-additional-options "-fdiagnostics-path-format=separate-events" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 
 #include "malloc-macro.h"
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-many-paths-3.c b/gcc/testsuite/c-c++-common/analyzer/malloc-many-paths-3.c
index e5d27a4a33a6..6ee30f3c86ab 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-many-paths-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-many-paths-3.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 extern int foo (void);
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-meaning-1.c b/gcc/testsuite/c-c++-common/analyzer/malloc-meaning-1.c
index 4964e25fe108..a0bc30ad4f23 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-meaning-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-meaning-1.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fanalyzer-verbose-state-changes" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-1.c b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-1.c
index 0436928238c2..2c09c11f050c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-1.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 /* Verify that we emit sane paths for state machine errors.  */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-2.c b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-2.c
index 27098da1996d..af57085243a9 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-2.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 /* Verify that we emit sane paths for state machine errors.  */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-3.c b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-3.c
index 8f9e4cff6e2b..22fabbd1eafa 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-3.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 /* Verify that we emit sane paths for state machine errors.  */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-4.c b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-4.c
index 7b7803eac45a..6976fce7ec66 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-4.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-4.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 /* Verify that we emit sane paths for state machine errors.  */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-5.c b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-5.c
index ca8d22be7b0d..ea1f1fb72eb7 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-5.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-5.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
+
 #include <stdio.h>
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-6.c b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-6.c
index 1df6964544e2..dfed45df15d2 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-6.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-6.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void test (void *ptr)
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-7.c b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-7.c
index f6b99e35a43e..766bbe7d99ad 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-7.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-7.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 extern int foo (void);
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-9-noexcept.c b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-9-noexcept.c
index 57d25f436a08..fc453b124957 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-paths-9-noexcept.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-paths-9-noexcept.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fdiagnostics-show-line-numbers -fdiagnostics-path-format=inline-events -fdiagnostics-show-caret -fno-exceptions" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 /* { dg-enable-nn-line-numbers "" } */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-sarif-1.c b/gcc/testsuite/c-c++-common/analyzer/malloc-sarif-1.c
index 19ac89f2b67c..cee6788c266b 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-sarif-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-sarif-1.c
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-additional-options " -fno-diagnostics-json-formatting -fdiagnostics-format=sarif-file" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-1a.c b/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-1a.c
index bf77862e67c4..4e408339d67d 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-1a.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-1a.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fno-analyzer-call-summaries -fanalyzer-transitivity" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 #include "analyzer-decls.h"
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-1b.c b/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-1b.c
index a30b8c0e0806..f4d63115929e 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-1b.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-1b.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fanalyzer-call-summaries" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 #include "analyzer-decls.h"
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-2.c b/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-2.c
index 9001fe66cd78..36ec5109ac7d 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-2.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include "analyzer-decls.h"
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-3.c b/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-3.c
index 0196389d3a59..70b3edd38f5b 100644
--- a/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/malloc-vs-local-3.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include "analyzer-decls.h"
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-1.c b/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-1.c
index 868b8ee9b410..16b2271bb93e 100644
--- a/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-1.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include <string.h>
 #include <stdint.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-2.c b/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-2.c
index e69614612fdb..0e1aba59fef7 100644
--- a/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-2.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include <string.h>
 #include <stdio.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-diagram-3.c b/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-diagram-3.c
index 43df9564a76a..e75ce1214bd2 100644
--- a/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-diagram-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-diagram-3.c
@@ -2,6 +2,7 @@
    { dg-require-effective-target lp64 } */
 
 /* { dg-additional-options "-fdiagnostics-text-art-charset=unicode" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 #include <string.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-diagram-8.c b/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-diagram-8.c
index 81cd4ff3c4b1..c8ff2fd1e64c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-diagram-8.c
+++ b/gcc/testsuite/c-c++-common/analyzer/out-of-bounds-diagram-8.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fdiagnostics-text-art-charset=unicode" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } } */
 
 #include <stdlib.h>
 #include <stdint.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/paths-3.c b/gcc/testsuite/c-c++-common/analyzer/paths-3.c
index b5ab810e5363..1a4a81350c19 100644
--- a/gcc/testsuite/c-c++-common/analyzer/paths-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/paths-3.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fanalyzer-transitivity" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 #include "analyzer-decls.h"
diff --git a/gcc/testsuite/c-c++-common/analyzer/paths-6.c b/gcc/testsuite/c-c++-common/analyzer/paths-6.c
index ef1a4e6c04d1..766db4c40a05 100644
--- a/gcc/testsuite/c-c++-common/analyzer/paths-6.c
+++ b/gcc/testsuite/c-c++-common/analyzer/paths-6.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include "analyzer-decls.h"
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/paths-7.c b/gcc/testsuite/c-c++-common/analyzer/paths-7.c
index 8caaee8a3fd0..2743de5cd8c0 100644
--- a/gcc/testsuite/c-c++-common/analyzer/paths-7.c
+++ b/gcc/testsuite/c-c++-common/analyzer/paths-7.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include "analyzer-decls.h"
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr103526.c b/gcc/testsuite/c-c++-common/analyzer/pr103526.c
index 0388fc1df999..776ac2923dfa 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr103526.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr103526.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include <string.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr106539.c b/gcc/testsuite/c-c++-common/analyzer/pr106539.c
index 8745c1de09ae..1f49f9169eb6 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr106539.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr106539.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void *test (void)
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr93290.c b/gcc/testsuite/c-c++-common/analyzer/pr93290.c
index fa35629d955b..4fcc4cbfaed1 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr93290.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr93290.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for cmath" { ! hostedlib } } */
+
 #include <math.h>
 
 int test_1 (void)
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr94399.c b/gcc/testsuite/c-c++-common/analyzer/pr94399.c
index e897c04a007e..70270c37a27d 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr94399.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr94399.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 #define _cleanup_(f) __attribute__((cleanup(f)))
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr94851-1.c b/gcc/testsuite/c-c++-common/analyzer/pr94851-1.c
index 7407efa21e76..dc2bc3a7806a 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr94851-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr94851-1.c
@@ -1,5 +1,6 @@
 /* { dg-skip-if "" { powerpc*-*-aix* } } */
 /* { dg-additional-options "-O2" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr94851-2.c b/gcc/testsuite/c-c++-common/analyzer/pr94851-2.c
index 62176bdaee89..af838de9355d 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr94851-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr94851-2.c
@@ -2,6 +2,7 @@
    an unknown function (PR analyzer/98575).  */
 
 /* { dg-additional-options "-O2" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr94851-4.c b/gcc/testsuite/c-c++-common/analyzer/pr94851-4.c
index a5130c59cb00..d05d45876c9c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr94851-4.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr94851-4.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-O2 -Wno-analyzer-symbol-too-complex" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr97608.c b/gcc/testsuite/c-c++-common/analyzer/pr97608.c
index a2bc1301097c..ddfa0091d86c 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr97608.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr97608.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void *f (void)
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr98918.c b/gcc/testsuite/c-c++-common/analyzer/pr98918.c
index c3bbce3e6ec1..eddc4e30684e 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr98918.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr98918.c
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-Wno-analyzer-symbol-too-complex" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr99716-2.c b/gcc/testsuite/c-c++-common/analyzer/pr99716-2.c
index adc9819643ae..ef7cc5fb4945 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr99716-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr99716-2.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib rand" { ! hostedlib } } */
+
 /* Reduced from
    https://github.com/libguestfs/libguestfs/blob/e0a11061035d47b118c95706240bcc17fd576edc/tests/mount-local/test-parallel-mount-local.c#L299-L335
    which is GPLv2 or later.  */
diff --git a/gcc/testsuite/c-c++-common/analyzer/pr99716-3.c b/gcc/testsuite/c-c++-common/analyzer/pr99716-3.c
index 77d450ea3be0..414d57e3a728 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pr99716-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pr99716-3.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 extern void foo (void *);
diff --git a/gcc/testsuite/c-c++-common/analyzer/pragma-1.c b/gcc/testsuite/c-c++-common/analyzer/pragma-1.c
index 2e533489405b..821266a3c3ba 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pragma-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pragma-1.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 /* Verify that we can disable analyzer warnings via pragmas.  */
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/pragma-2.c b/gcc/testsuite/c-c++-common/analyzer/pragma-2.c
index 2453223d9392..03858a977788 100644
--- a/gcc/testsuite/c-c++-common/analyzer/pragma-2.c
+++ b/gcc/testsuite/c-c++-common/analyzer/pragma-2.c
@@ -1,4 +1,5 @@
 /* { dg-skip-if "" { powerpc*-*-aix* } } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 /* Verify that we can disable -Wanalyzer-too-complex via pragmas.  */
 /* { dg-additional-options "-Wanalyzer-too-complex -Werror=analyzer-too-complex -fno-analyzer-state-merge -g" } */
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/sarif-path-role.c b/gcc/testsuite/c-c++-common/analyzer/sarif-path-role.c
index d0f6cefcf4d0..c5592776bebb 100644
--- a/gcc/testsuite/c-c++-common/analyzer/sarif-path-role.c
+++ b/gcc/testsuite/c-c++-common/analyzer/sarif-path-role.c
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-additional-options " -fno-diagnostics-json-formatting -fdiagnostics-format=sarif-file" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/analyzer/scope-1.c b/gcc/testsuite/c-c++-common/analyzer/scope-1.c
index 09e62d46df35..7e53a1914c7e 100644
--- a/gcc/testsuite/c-c++-common/analyzer/scope-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/scope-1.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 int test_1 (void)
diff --git a/gcc/testsuite/c-c++-common/analyzer/strndup-1.c b/gcc/testsuite/c-c++-common/analyzer/strndup-1.c
index 577ece0cfbaa..3f90afe2ebb6 100644
--- a/gcc/testsuite/c-c++-common/analyzer/strndup-1.c
+++ b/gcc/testsuite/c-c++-common/analyzer/strndup-1.c
@@ -1,5 +1,6 @@
 /* { dg-skip-if "no strndup in libc" { *-*-darwin[789]* *-*-darwin10* hppa*-*-hpux* *-*-mingw* *-*-vxworks* } } */
 /* { dg-additional-options "-D_POSIX_C_SOURCE=200809L" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 
 #include <string.h>
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/taint-realloc.c b/gcc/testsuite/c-c++-common/analyzer/taint-realloc.c
index aeefb7da2c12..d5ccb28ddd28 100644
--- a/gcc/testsuite/c-c++-common/analyzer/taint-realloc.c
+++ b/gcc/testsuite/c-c++-common/analyzer/taint-realloc.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib realloc" { ! hostedlib } } */
+
 #include "analyzer-decls.h"
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/analyzer/use-after-free-3.c b/gcc/testsuite/c-c++-common/analyzer/use-after-free-3.c
index b19fd3de49f4..d8eeb1741138 100644
--- a/gcc/testsuite/c-c++-common/analyzer/use-after-free-3.c
+++ b/gcc/testsuite/c-c++-common/analyzer/use-after-free-3.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 void test_1 (int x, int y, int *out)
diff --git a/gcc/testsuite/c-c++-common/analyzer/zlib-4.c b/gcc/testsuite/c-c++-common/analyzer/zlib-4.c
index ae2f6c9f8ad1..32d5991b4218 100644
--- a/gcc/testsuite/c-c++-common/analyzer/zlib-4.c
+++ b/gcc/testsuite/c-c++-common/analyzer/zlib-4.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib calloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 #include <string.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-counter-vars-function-scope.c b/gcc/testsuite/c-c++-common/goacc/kernels-counter-vars-function-scope.c
index bce17a1011c3..6ddee621ccaa 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-counter-vars-function-scope.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-counter-vars-function-scope.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop-2.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop-2.c
index 456a95451fa7..9c608a50993b 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop-2.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop-2.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop-3.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop-3.c
index ef0c481dea09..9852814192e1 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop-3.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop-3.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-2.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-2.c
index a64007815c19..54a6f58a7f82 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-2.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-2.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit-2.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit-2.c
index d46bba8ec3a0..0bd59e391cb6 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit-2.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit-2.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit.c
index 6698980a86f3..2ed12707a5a9 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-update.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-update.c
index 9c6997f86b0a..a10b7d9aaa5a 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-update.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-update.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop-data.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop-data.c
index 0ef576521b09..140b672341dc 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop-data.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop-data.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop-g.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop-g.c
index cf9f1ee6b28a..1e3708865dbd 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop-g.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop-g.c
@@ -5,6 +5,7 @@
 /*TODO PR100400 { dg-additional-options -fcompare-debug } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include "kernels-loop.c"
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop-mod-not-zero.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop-mod-not-zero.c
index eea9a735e8b5..9b7c79ef4ca4 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop-mod-not-zero.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop-mod-not-zero.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop-n.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop-n.c
index a63ed8ab1fd8..5cbf33fabb3b 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop-n.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop-n.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-loop.c b/gcc/testsuite/c-c++-common/goacc/kernels-loop.c
index 2602081f2c66..5f88bcc37c6c 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-loop.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-loop.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-one-counter-var.c b/gcc/testsuite/c-c++-common/goacc/kernels-one-counter-var.c
index 0d9c875f3d93..99d7640f9103 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-one-counter-var.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-one-counter-var.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-parallel-loop-data-enter-exit.c b/gcc/testsuite/c-c++-common/goacc/kernels-parallel-loop-data-enter-exit.c
index 1dcd32fb8dc1..c9974919787b 100644
--- a/gcc/testsuite/c-c++-common/goacc/kernels-parallel-loop-data-enter-exit.c
+++ b/gcc/testsuite/c-c++-common/goacc/kernels-parallel-loop-data-enter-exit.c
@@ -1,6 +1,7 @@
 /* { dg-additional-options "-O2" } */
 /* { dg-additional-options "-fdump-tree-parloops1-all" } */
 /* { dg-additional-options "-fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/gomp/pr103642.c b/gcc/testsuite/c-c++-common/gomp/pr103642.c
index bbd0896841f6..7f05ded06ed1 100644
--- a/gcc/testsuite/c-c++-common/gomp/pr103642.c
+++ b/gcc/testsuite/c-c++-common/gomp/pr103642.c
@@ -1,5 +1,6 @@
 /* PR middle-end/103642 */
 /* { dg-do compile } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/c-c++-common/gomp/target-implicit-map-2.c b/gcc/testsuite/c-c++-common/gomp/target-implicit-map-2.c
index 222272df5b1e..3c65e20d6e63 100644
--- a/gcc/testsuite/c-c++-common/gomp/target-implicit-map-2.c
+++ b/gcc/testsuite/c-c++-common/gomp/target-implicit-map-2.c
@@ -1,5 +1,7 @@
 /* { dg-do compile } */
 /* { dg-additional-options "-fdump-tree-gimple" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
+
 #include <stdlib.h>
 
 #define N 10
diff --git a/gcc/testsuite/c-c++-common/simulate-thread/bitfields-4.c b/gcc/testsuite/c-c++-common/simulate-thread/bitfields-4.c
index 84aad5e9e216..6ee91aa3bc47 100644
--- a/gcc/testsuite/c-c++-common/simulate-thread/bitfields-4.c
+++ b/gcc/testsuite/c-c++-common/simulate-thread/bitfields-4.c
@@ -1,6 +1,7 @@
 /* { dg-do link } */
 /* { dg-options "-fno-allow-store-data-races" } */
 /* { dg-final { simulate-thread } } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib calloc" { ! hostedlib } } */
 
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/gcc/testsuite/c-c++-common/tm/malloc.c b/gcc/testsuite/c-c++-common/tm/malloc.c
index 4312765f750d..801d8fed4e1a 100644
--- a/gcc/testsuite/c-c++-common/tm/malloc.c
+++ b/gcc/testsuite/c-c++-common/tm/malloc.c
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-fgnu-tm -fdump-tree-tmmark" } */
+// { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/g++.dg/abi/mangle36.C b/gcc/testsuite/g++.dg/abi/mangle36.C
index 1acfc879b96a..d0f2b37dfb04 100644
--- a/gcc/testsuite/g++.dg/abi/mangle36.C
+++ b/gcc/testsuite/g++.dg/abi/mangle36.C
@@ -1,6 +1,7 @@
 // PR c++/41959
 // { dg-do compile { target i?86-*-* x86_64-*-* } }
 // { dg-options "-mavx -fabi-version=4 -fabi-compat-version=4" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 // { dg-final { scan-assembler "_Z1fDv4_f" } }
 // { dg-final { scan-assembler "_Z1fDv8_f" } }
 
diff --git a/gcc/testsuite/g++.dg/abi/mangle40.C b/gcc/testsuite/g++.dg/abi/mangle40.C
index 898565ac5720..98a1ff08a4ea 100644
--- a/gcc/testsuite/g++.dg/abi/mangle40.C
+++ b/gcc/testsuite/g++.dg/abi/mangle40.C
@@ -3,6 +3,7 @@
 // { dg-require-weak "" }
 // { dg-require-alias "" }
 // { dg-options "-mavx -Wabi -fabi-version=2 -fabi-compat-version=0" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 // { dg-final { scan-assembler "(weak|glob)\[^\n\]*_Z1fIDv4_fEvT_" } }
 // { dg-final { scan-assembler "(weak|glob)\[^\n\]*_Z1fIU8__vectorfEvT_" } }
 // { dg-final { scan-assembler "(weak|glob)\[^\n\]*_ZN1AIDv4_fE1tE" } }
diff --git a/gcc/testsuite/g++.dg/abi/mangle41.C b/gcc/testsuite/g++.dg/abi/mangle41.C
index 9da72f11feb6..d11f4541f99c 100644
--- a/gcc/testsuite/g++.dg/abi/mangle41.C
+++ b/gcc/testsuite/g++.dg/abi/mangle41.C
@@ -1,6 +1,7 @@
 // PR c++/41959
 // { dg-do compile { target i?86-*-* x86_64-*-* } }
 // { dg-options "-mavx -fabi-version=2" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 #include <x86intrin.h>
 void f(__m128) { }	// { dg-message "previous mangling" }
diff --git a/gcc/testsuite/g++.dg/analyzer/cstdlib.C b/gcc/testsuite/g++.dg/analyzer/cstdlib.C
index ec6327bf884d..6fbb0e458315 100644
--- a/gcc/testsuite/g++.dg/analyzer/cstdlib.C
+++ b/gcc/testsuite/g++.dg/analyzer/cstdlib.C
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
+
 #include <cstdlib>
 
 void test_1 (void *ptr)
diff --git a/gcc/testsuite/g++.dg/analyzer/fanalyzer-show-events-in-system-headers-default.C b/gcc/testsuite/g++.dg/analyzer/fanalyzer-show-events-in-system-headers-default.C
index 26f047d54715..483cefd6ec31 100644
--- a/gcc/testsuite/g++.dg/analyzer/fanalyzer-show-events-in-system-headers-default.C
+++ b/gcc/testsuite/g++.dg/analyzer/fanalyzer-show-events-in-system-headers-default.C
@@ -1,4 +1,5 @@
 /* { dg-skip-if "no shared_ptr in C++98" { c++98_only }  } */
+/* { dg-skip-if "requires hosted libstdc++ for memory shared_ptr" { ! hostedlib } } */
 
 #include <memory>
 
diff --git a/gcc/testsuite/g++.dg/analyzer/fanalyzer-show-events-in-system-headers-no.C b/gcc/testsuite/g++.dg/analyzer/fanalyzer-show-events-in-system-headers-no.C
index fd0df3180516..10d220fa9404 100644
--- a/gcc/testsuite/g++.dg/analyzer/fanalyzer-show-events-in-system-headers-no.C
+++ b/gcc/testsuite/g++.dg/analyzer/fanalyzer-show-events-in-system-headers-no.C
@@ -1,5 +1,6 @@
 /* { dg-additional-options "-fno-analyzer-show-events-in-system-headers" } */
 /* { dg-skip-if "no shared_ptr in C++98" { c++98_only }  } */
+/* { dg-skip-if "requires hosted libstdc++ for memory shared_ptr" { ! hostedlib } } */
 
 #include <memory>
 
diff --git a/gcc/testsuite/g++.dg/analyzer/malloc.C b/gcc/testsuite/g++.dg/analyzer/malloc.C
index 76baab982229..d4ef831fe623 100644
--- a/gcc/testsuite/g++.dg/analyzer/malloc.C
+++ b/gcc/testsuite/g++.dg/analyzer/malloc.C
@@ -1,4 +1,5 @@
 // { dg-do compile }
+/* { dg-skip-if "requires hosted libstdc++ for stdlib free" { ! hostedlib } } */
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/g++.dg/analyzer/new-vs-malloc.C b/gcc/testsuite/g++.dg/analyzer/new-vs-malloc.C
index cb0b32424ca9..943ffe03cbfe 100644
--- a/gcc/testsuite/g++.dg/analyzer/new-vs-malloc.C
+++ b/gcc/testsuite/g++.dg/analyzer/new-vs-malloc.C
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib free" { ! hostedlib } } */
+
 #include <cstdlib>
 
 struct s {};
diff --git a/gcc/testsuite/g++.dg/analyzer/placement-new-size.C b/gcc/testsuite/g++.dg/analyzer/placement-new-size.C
index f6c7bd4de5fd..6744ad7d27f6 100644
--- a/gcc/testsuite/g++.dg/analyzer/placement-new-size.C
+++ b/gcc/testsuite/g++.dg/analyzer/placement-new-size.C
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-Wno-placement-new -Wno-analyzer-use-of-uninitialized-value" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <new>
 #include <stdlib.h>
diff --git a/gcc/testsuite/g++.dg/analyzer/vfunc-3.C b/gcc/testsuite/g++.dg/analyzer/vfunc-3.C
index 03d3cdc73bee..aaaf37603cf2 100644
--- a/gcc/testsuite/g++.dg/analyzer/vfunc-3.C
+++ b/gcc/testsuite/g++.dg/analyzer/vfunc-3.C
@@ -1,3 +1,5 @@
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
+
 #include <cstdlib>
 
 struct A
diff --git a/gcc/testsuite/g++.dg/analyzer/vfunc-5.C b/gcc/testsuite/g++.dg/analyzer/vfunc-5.C
index 2af84657f679..89e0c936ea51 100644
--- a/gcc/testsuite/g++.dg/analyzer/vfunc-5.C
+++ b/gcc/testsuite/g++.dg/analyzer/vfunc-5.C
@@ -1,4 +1,5 @@
 /* { dg-additional-options "-fdiagnostics-show-line-numbers -fdiagnostics-path-format=inline-events -fanalyzer-checker=malloc -fdiagnostics-show-caret" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 /* { dg-enable-nn-line-numbers "" } */
 
 #include <cstdlib>
diff --git a/gcc/testsuite/g++.dg/cdce3.C b/gcc/testsuite/g++.dg/cdce3.C
index 4b547b5d994e..6999392f0fce 100644
--- a/gcc/testsuite/g++.dg/cdce3.C
+++ b/gcc/testsuite/g++.dg/cdce3.C
@@ -4,6 +4,7 @@
 /* { dg-additional-options "-DLARGE_LONG_DOUBLE" { target large_long_double } } */
 /* { dg-additional-options "-DGNU_EXTENSION" { target pow10 } } */
 /* { dg-add-options ieee } */
+/* { dg-skip-if "requires hosted libstdc++ for cmath" { ! hostedlib } } */
 /* { dg-final { scan-tree-dump  "cdce3.C:91: .* function call is shrink-wrapped into error conditions\." "cdce" { target pow10 } } } */
 /* { dg-final { scan-tree-dump  "cdce3.C:92: .* function call is shrink-wrapped into error conditions\." "cdce" { target pow10 } } } */
 /* { dg-final { scan-tree-dump  "cdce3.C:94: .* function call is shrink-wrapped into error conditions\." "cdce" } } */
diff --git a/gcc/testsuite/g++.dg/contracts/contracts-post7.C b/gcc/testsuite/g++.dg/contracts/contracts-post7.C
index 1c33181b5e60..5830c5ead105 100644
--- a/gcc/testsuite/g++.dg/contracts/contracts-post7.C
+++ b/gcc/testsuite/g++.dg/contracts/contracts-post7.C
@@ -1,5 +1,6 @@
 // { dg-do run }
 // { dg-options "-std=c++2a -fcontracts" }
+/* { dg-skip-if "requires hosted libstdc++ for cwchar" { ! hostedlib } } */
 
 #include <experimental/contract>
 
diff --git a/gcc/testsuite/g++.dg/contracts/pr110159.C b/gcc/testsuite/g++.dg/contracts/pr110159.C
index 614b466b1a39..3cf5967cfd6f 100644
--- a/gcc/testsuite/g++.dg/contracts/pr110159.C
+++ b/gcc/testsuite/g++.dg/contracts/pr110159.C
@@ -1,6 +1,7 @@
 // check that contracts can be handled even when exceptions are disabled
 // { dg-do run }
 // { dg-options "-std=c++2a -fcontracts -fno-exceptions " }
+// { dg-skip-if "requires hosted libstdc++ for stdc++exp" { ! hostedlib } }
 // { dg-output "contract violation in function f at .* a<5" }
 
 #include <exception>
diff --git a/gcc/testsuite/g++.dg/contracts/pr115434.C b/gcc/testsuite/g++.dg/contracts/pr115434.C
index e9c847f8969d..1e3327a00972 100644
--- a/gcc/testsuite/g++.dg/contracts/pr115434.C
+++ b/gcc/testsuite/g++.dg/contracts/pr115434.C
@@ -2,6 +2,7 @@
 
 // { dg-do run }
 // { dg-options "-std=c++20 -fcontracts -fcontract-continuation-mode=on" }
+// { dg-skip-if "requires hosted libstdc++ for stdc++exp" { ! hostedlib } }
 
 
 void foo (const int b)
diff --git a/gcc/testsuite/g++.dg/coroutines/coro-bad-gro-00-class-gro-scalar-return.C b/gcc/testsuite/g++.dg/coroutines/coro-bad-gro-00-class-gro-scalar-return.C
index 605a2135878b..639d859a9620 100644
--- a/gcc/testsuite/g++.dg/coroutines/coro-bad-gro-00-class-gro-scalar-return.C
+++ b/gcc/testsuite/g++.dg/coroutines/coro-bad-gro-00-class-gro-scalar-return.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for cstdlib abort" { ! hostedlib } }
+
 // Test handling of the case where we have a class g-r-o and a non-void
 // and non-class-type ramp return.
 
diff --git a/gcc/testsuite/g++.dg/coroutines/coro-bad-gro-01-void-gro-non-class-coro.C b/gcc/testsuite/g++.dg/coroutines/coro-bad-gro-01-void-gro-non-class-coro.C
index a7e3f3d1ac7d..680e7c35c1e6 100644
--- a/gcc/testsuite/g++.dg/coroutines/coro-bad-gro-01-void-gro-non-class-coro.C
+++ b/gcc/testsuite/g++.dg/coroutines/coro-bad-gro-01-void-gro-non-class-coro.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for cstdlib abort" { ! hostedlib } }
+
 // Test handling of the case where we have a void g-r-o and a non-void
 // and non-class-type ramp return.
 
diff --git a/gcc/testsuite/g++.dg/coroutines/pr110635.C b/gcc/testsuite/g++.dg/coroutines/pr110635.C
index ea4e0e853eb5..7b577ba71865 100644
--- a/gcc/testsuite/g++.dg/coroutines/pr110635.C
+++ b/gcc/testsuite/g++.dg/coroutines/pr110635.C
@@ -1,3 +1,4 @@
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
 
 #define CASE 0
 #include <coroutine>
diff --git a/gcc/testsuite/g++.dg/coroutines/pr110871.C b/gcc/testsuite/g++.dg/coroutines/pr110871.C
index 8a667c856ae8..7ea07ccdf479 100644
--- a/gcc/testsuite/g++.dg/coroutines/pr110871.C
+++ b/gcc/testsuite/g++.dg/coroutines/pr110871.C
@@ -1,5 +1,7 @@
 // { dg-additional-options "-fcontracts -fcontract-continuation-mode=on" }
 // { dg-do run }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
+
 #include <iostream>
 #include <coroutine>
 
diff --git a/gcc/testsuite/g++.dg/coroutines/pr110872.C b/gcc/testsuite/g++.dg/coroutines/pr110872.C
index a809986f2962..fbc2d84ddee4 100644
--- a/gcc/testsuite/g++.dg/coroutines/pr110872.C
+++ b/gcc/testsuite/g++.dg/coroutines/pr110872.C
@@ -1,5 +1,6 @@
 // { dg-additional-options "-fcontracts -fcontract-continuation-mode=on" }
 // { dg-do run }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
 
 #include <iostream>
 #include <coroutine>
diff --git a/gcc/testsuite/g++.dg/coroutines/symmetric-transfer-00-basic.C b/gcc/testsuite/g++.dg/coroutines/symmetric-transfer-00-basic.C
index a95940851356..5f663fb6a2c7 100644
--- a/gcc/testsuite/g++.dg/coroutines/symmetric-transfer-00-basic.C
+++ b/gcc/testsuite/g++.dg/coroutines/symmetric-transfer-00-basic.C
@@ -4,6 +4,7 @@
 
 // { dg-do run { target { i?86-*-linux-gnu x86_64-*-linux-gnu *-*-darwin* } } }
 // { dg-additional-options "-O2" }
+// { dg-skip-if "requires hosted libstdc++ for chrono" { ! hostedlib } }
 
 #if __has_include(<coroutine>)
 
diff --git a/gcc/testsuite/g++.dg/coroutines/torture/co-yield-03-tmpl-nondependent.C b/gcc/testsuite/g++.dg/coroutines/torture/co-yield-03-tmpl-nondependent.C
index 8e91d9557d2f..399c0116a127 100644
--- a/gcc/testsuite/g++.dg/coroutines/torture/co-yield-03-tmpl-nondependent.C
+++ b/gcc/testsuite/g++.dg/coroutines/torture/co-yield-03-tmpl-nondependent.C
@@ -1,4 +1,5 @@
 //  { dg-do run }
+//  { dg-skip-if "requires hosted libstdc++ for cstdlib abort" { ! hostedlib } }
 
 // Test co_yield in templated code where the promise type is not dependent.
 
diff --git a/gcc/testsuite/g++.dg/cpp/pr80005.C b/gcc/testsuite/g++.dg/cpp/pr80005.C
index cc752616782f..1c4b01ecae80 100644
--- a/gcc/testsuite/g++.dg/cpp/pr80005.C
+++ b/gcc/testsuite/g++.dg/cpp/pr80005.C
@@ -1,5 +1,6 @@
 // PR preprocessor/80005
 // { dg-do preprocess }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #undef vector
 #define vector NOPE
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-std-function.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-std-function.C
index a410384a451f..78a1284da5e6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-std-function.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-std-function.C
@@ -1,5 +1,6 @@
 // Test using std::function wrapper.
 // { dg-do run { target c++11 } }
+// { dg-skip-if "requires hosted libstdc++ for functional function" { ! hostedlib } }
 
 #include <functional>
 
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this8.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this8.C
index e62cd08a614e..f4cfcb527046 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this8.C
@@ -1,5 +1,6 @@
 // PR c++/56135
 // { dg-do run { target c++11 } }
+// { dg-skip-if "requires hosted libstdc++ for functional function" { ! hostedlib } }
 
 #include <functional>
 
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr70887.C b/gcc/testsuite/g++.dg/cpp0x/pr70887.C
index f5b31b229003..38b0fb2f9b2e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr70887.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr70887.C
@@ -1,6 +1,7 @@
 // PR middle-end/70887
 // { dg-do compile { target { { i?86-*-* x86_64-*-* } && c++11 } } }
 // { dg-options "-O2 -msse2" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 #include <x86intrin.h>
 
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-extended-id-1.C b/gcc/testsuite/g++.dg/cpp0x/udlit-extended-id-1.C
index 94c0cd430aa1..e9373e563d95 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-extended-id-1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-extended-id-1.C
@@ -1,6 +1,8 @@
 // { dg-do run { target c++11 } }
 // { dg-additional-options "-Wno-error=normalized" }
 // { dg-require-effective-target ucn }
+// { dg-skip-if "requires hosted libstdc++ for cstring" { ! hostedlib } }
+
 #include <cstring>
 #include <cstddef>
 using namespace std;
diff --git a/gcc/testsuite/g++.dg/cpp1y/feat-cxx14.C b/gcc/testsuite/g++.dg/cpp1y/feat-cxx14.C
index a78b6a36f36e..cd58309c322f 100644
--- a/gcc/testsuite/g++.dg/cpp1y/feat-cxx14.C
+++ b/gcc/testsuite/g++.dg/cpp1y/feat-cxx14.C
@@ -1,4 +1,5 @@
 // { dg-options "-std=c++14 -I${srcdir}/g++.dg/cpp1y -I${srcdir}/g++.dg/cpp1y/testinc" }
+// { dg-skip-if "requires hosted libstdc++ for complex" { ! hostedlib } }
 
 //  C++98 features:
 
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic2.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic2.C
index c70cc8d7747c..b7ff75541086 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic2.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic2.C
@@ -1,6 +1,7 @@
 // PR c++/64105
 // This test was ICEing in C++11 mode.
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "requires hosted libstdc++ for functional function" { ! hostedlib } }
 
 #include <functional>
 
diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-asm-1.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-asm-1.C
index 311209acb43b..204836019b5c 100644
--- a/gcc/testsuite/g++.dg/cpp1z/constexpr-asm-1.C
+++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-asm-1.C
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-std=gnu++17" } */
+/* { dg-skip-if "requires hosted libstdc++ for string" { ! hostedlib } } */
 
 #include <string>
 
diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-asm-3.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-asm-3.C
index 0cf8940e109c..6950374643c0 100644
--- a/gcc/testsuite/g++.dg/cpp1z/constexpr-asm-3.C
+++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-asm-3.C
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-std=gnu++17" } */
+/* { dg-skip-if "requires hosted libstdc++ for string" { ! hostedlib } } */
 
 #include <string>
 
diff --git a/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C b/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
index e6f456b24154..bb16425982e9 100644
--- a/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
+++ b/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
@@ -1,5 +1,6 @@
 // { dg-do compile }
 // { dg-options "-std=c++17 -I${srcdir}/g++.dg/cpp1y -I${srcdir}/g++.dg/cpp1y/testinc" }
+// { dg-skip-if "requires hosted libstdc++ for complex" { ! hostedlib } }
 
 //  C++98 features:
 
diff --git a/gcc/testsuite/g++.dg/cpp23/ext-floating12.C b/gcc/testsuite/g++.dg/cpp23/ext-floating12.C
index a09c3fc10c4e..c1edcd593ef7 100644
--- a/gcc/testsuite/g++.dg/cpp23/ext-floating12.C
+++ b/gcc/testsuite/g++.dg/cpp23/ext-floating12.C
@@ -3,6 +3,7 @@
 // { dg-options "" }
 // { dg-add-options float16 }
 // { dg-add-options bfloat16 }
+// { dg-skip-if "requires hosted libstdc++ for complex" { ! hostedlib } }
 
 #include <complex>
 #include <stdfloat>
diff --git a/gcc/testsuite/g++.dg/cpp23/feat-cxx2b.C b/gcc/testsuite/g++.dg/cpp23/feat-cxx2b.C
index d81aab756382..a1ddc81cefde 100644
--- a/gcc/testsuite/g++.dg/cpp23/feat-cxx2b.C
+++ b/gcc/testsuite/g++.dg/cpp23/feat-cxx2b.C
@@ -1,4 +1,5 @@
 // { dg-options "-std=c++2b -I${srcdir}/g++.dg/cpp1y -I${srcdir}/g++.dg/cpp1y/testinc" }
+// { dg-skip-if "requires hosted libstdc++ for complex" { ! hostedlib } }
 
 //  C++98 features:
 
diff --git a/gcc/testsuite/g++.dg/cpp26/constexpr-new2.C b/gcc/testsuite/g++.dg/cpp26/constexpr-new2.C
index e33318542537..02200ecb3633 100644
--- a/gcc/testsuite/g++.dg/cpp26/constexpr-new2.C
+++ b/gcc/testsuite/g++.dg/cpp26/constexpr-new2.C
@@ -1,5 +1,6 @@
 // C++26 P2747R2 - constexpr placement new
 // { dg-do compile { target c++26 } }
+// { dg-skip-if "requires hosted libstdc++ for memory allocator" { ! hostedlib } }
 
 #include <memory>
 #include <new>
diff --git a/gcc/testsuite/g++.dg/cpp26/constexpr-voidptr1.C b/gcc/testsuite/g++.dg/cpp26/constexpr-voidptr1.C
index ce0ccbef5f9a..c9e645515ab1 100644
--- a/gcc/testsuite/g++.dg/cpp26/constexpr-voidptr1.C
+++ b/gcc/testsuite/g++.dg/cpp26/constexpr-voidptr1.C
@@ -1,5 +1,6 @@
 // PR c++/110344
 // { dg-do compile { target c++26 } }
+// { dg-skip-if "requires hosted libstdc++ for cwchar" { ! hostedlib } }
 
 #include <string_view>
 struct Sheep {
diff --git a/gcc/testsuite/g++.dg/cpp26/feat-cxx26.C b/gcc/testsuite/g++.dg/cpp26/feat-cxx26.C
index 82be39c996f2..52c89e498fb0 100644
--- a/gcc/testsuite/g++.dg/cpp26/feat-cxx26.C
+++ b/gcc/testsuite/g++.dg/cpp26/feat-cxx26.C
@@ -1,4 +1,5 @@
 // { dg-options "-std=c++26 -I${srcdir}/g++.dg/cpp1y -I${srcdir}/g++.dg/cpp1y/testinc" }
+// { dg-skip-if "requires hosted libstdc++ for complex" { ! hostedlib } }
 
 //  C++98 features:
 
diff --git a/gcc/testsuite/g++.dg/cpp2a/destroying-delete5.C b/gcc/testsuite/g++.dg/cpp2a/destroying-delete5.C
index 6113d7f3d9e7..d298d1a124c8 100644
--- a/gcc/testsuite/g++.dg/cpp2a/destroying-delete5.C
+++ b/gcc/testsuite/g++.dg/cpp2a/destroying-delete5.C
@@ -1,6 +1,7 @@
 // PR c++/91859
 // { dg-do run { target c++20 } }
 // { dg-additional-options -O2 }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 #include <cstdlib>
 #include <new>
diff --git a/gcc/testsuite/g++.dg/cpp2a/feat-cxx2a.C b/gcc/testsuite/g++.dg/cpp2a/feat-cxx2a.C
index fc268d44e1a9..3c43e9dae465 100644
--- a/gcc/testsuite/g++.dg/cpp2a/feat-cxx2a.C
+++ b/gcc/testsuite/g++.dg/cpp2a/feat-cxx2a.C
@@ -1,4 +1,5 @@
 // { dg-options "-std=c++2a -I${srcdir}/g++.dg/cpp1y -I${srcdir}/g++.dg/cpp1y/testinc" }
+// { dg-skip-if "requires hosted libstdc++ for complex" { ! hostedlib } }
 
 //  C++98 features:
 
diff --git a/gcc/testsuite/g++.dg/diagnostic/missing-header-pr110164.C b/gcc/testsuite/g++.dg/diagnostic/missing-header-pr110164.C
index 15980071c383..737bbb503b6f 100644
--- a/gcc/testsuite/g++.dg/diagnostic/missing-header-pr110164.C
+++ b/gcc/testsuite/g++.dg/diagnostic/missing-header-pr110164.C
@@ -1,4 +1,5 @@
 // { dg-require-effective-target c++11 }
+// { dg-skip-if "requires hosted libstdc++ for map" { ! hostedlib } }
 
 #include <map>
 
diff --git a/gcc/testsuite/g++.dg/expr/anew1.C b/gcc/testsuite/g++.dg/expr/anew1.C
index d7a4288802a1..d51293658230 100644
--- a/gcc/testsuite/g++.dg/expr/anew1.C
+++ b/gcc/testsuite/g++.dg/expr/anew1.C
@@ -1,4 +1,6 @@
 // { dg-do run }
+// { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
+
 // PR 11228: array operator new, with zero-initialization and a variable sized array.
 // Regression test for PR 
 // Author: Matt Austern <austern@apple.com>
diff --git a/gcc/testsuite/g++.dg/expr/anew2.C b/gcc/testsuite/g++.dg/expr/anew2.C
index fbf2152d4acc..36c9a2bbb713 100644
--- a/gcc/testsuite/g++.dg/expr/anew2.C
+++ b/gcc/testsuite/g++.dg/expr/anew2.C
@@ -1,4 +1,6 @@
 // { dg-do run }
+// { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
+
 // PR 11228: array operator new, with zero-initialization and a variable sized array.
 // Regression test for PR 
 // Author: Matt Austern <austern@apple.com>
diff --git a/gcc/testsuite/g++.dg/expr/anew3.C b/gcc/testsuite/g++.dg/expr/anew3.C
index 9bb64ea4ea70..1ab639a5dc75 100644
--- a/gcc/testsuite/g++.dg/expr/anew3.C
+++ b/gcc/testsuite/g++.dg/expr/anew3.C
@@ -1,4 +1,6 @@
 // { dg-do run }
+// { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
+
 // PR 11228: array operator new, with zero-initialization and a variable sized array.
 // Regression test for PR 
 // Author: Matt Austern <austern@apple.com>
diff --git a/gcc/testsuite/g++.dg/expr/anew4.C b/gcc/testsuite/g++.dg/expr/anew4.C
index 4ce1d8899f96..9b55d45f0a63 100644
--- a/gcc/testsuite/g++.dg/expr/anew4.C
+++ b/gcc/testsuite/g++.dg/expr/anew4.C
@@ -1,4 +1,6 @@
 // { dg-do run }
+// { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
+
 // PR 11228: array operator new, with zero-initialization and a variable sized array.
 // Regression test for PR 
 // Author: Matt Austern <austern@apple.com>
diff --git a/gcc/testsuite/g++.dg/ext/builtin10.C b/gcc/testsuite/g++.dg/ext/builtin10.C
index 64e8995f3bfe..de3df967cc11 100644
--- a/gcc/testsuite/g++.dg/ext/builtin10.C
+++ b/gcc/testsuite/g++.dg/ext/builtin10.C
@@ -1,5 +1,6 @@
 // { dg-do compile { target correct_iso_cpp_string_wchar_protos } }
 // { dg-options "-O2 -fdump-tree-optimized" }
+// { dg-skip-if "requires hosted libstdc++ for cstring" { ! hostedlib } }
 
 #include <cstring>
 
diff --git a/gcc/testsuite/g++.dg/ext/cleanup-10.C b/gcc/testsuite/g++.dg/ext/cleanup-10.C
index 56aeb66b8507..0d535e451a7e 100644
--- a/gcc/testsuite/g++.dg/ext/cleanup-10.C
+++ b/gcc/testsuite/g++.dg/ext/cleanup-10.C
@@ -1,5 +1,6 @@
 /* { dg-do run { target hppa*-*-hpux* *-*-linux* *-*-gnu* powerpc*-*-darwin* *-*-darwin[912]* *-*-uclinux* } } */
 /* { dg-options "-fexceptions -fnon-call-exceptions -O2" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 /* Verify that cleanups work with exception handling through signal frames
    on alternate stack.  */
 
diff --git a/gcc/testsuite/g++.dg/ext/cleanup-11.C b/gcc/testsuite/g++.dg/ext/cleanup-11.C
index c6d35607d1a3..b9e7426d44bf 100644
--- a/gcc/testsuite/g++.dg/ext/cleanup-11.C
+++ b/gcc/testsuite/g++.dg/ext/cleanup-11.C
@@ -1,5 +1,6 @@
 /* { dg-do run { target hppa*-*-hpux* *-*-linux* *-*-gnu* powerpc*-*-darwin* *-*-darwin[912]* *-*-uclinux* } } */
 /* { dg-options "-fexceptions -fnon-call-exceptions -O2" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 /* Verify that cleanups work with exception handling through realtime signal
    frames on alternate stack.  */
 
diff --git a/gcc/testsuite/g++.dg/ext/cleanup-5.C b/gcc/testsuite/g++.dg/ext/cleanup-5.C
index 167f01a7cc54..ee7b4a0d2481 100644
--- a/gcc/testsuite/g++.dg/ext/cleanup-5.C
+++ b/gcc/testsuite/g++.dg/ext/cleanup-5.C
@@ -2,6 +2,7 @@
 /* { dg-do run } */
 /* { dg-options "-fexceptions" } */
 /* { dg-skip-if "" { "ia64-*-hpux11.*" } } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 /* Verify that cleanups work with exception handling.  */
 
 #include <unwind.h>
diff --git a/gcc/testsuite/g++.dg/ext/cleanup-8.C b/gcc/testsuite/g++.dg/ext/cleanup-8.C
index e99508dfdbfa..13d55f174d51 100644
--- a/gcc/testsuite/g++.dg/ext/cleanup-8.C
+++ b/gcc/testsuite/g++.dg/ext/cleanup-8.C
@@ -1,5 +1,6 @@
 /* { dg-do run { target hppa*-*-hpux* *-*-linux* *-*-gnu* powerpc*-*-darwin* *-*-darwin[912]* *-*-uclinux* } } */
 /* { dg-options "-fexceptions -fnon-call-exceptions -O2" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 /* Verify that cleanups work with exception handling through signal
    frames.  */
 
diff --git a/gcc/testsuite/g++.dg/ext/cleanup-9.C b/gcc/testsuite/g++.dg/ext/cleanup-9.C
index 45e5f90bceef..282df75c1a83 100644
--- a/gcc/testsuite/g++.dg/ext/cleanup-9.C
+++ b/gcc/testsuite/g++.dg/ext/cleanup-9.C
@@ -1,5 +1,6 @@
 /* { dg-do run { target hppa*-*-hpux* *-*-linux* *-*-gnu* powerpc*-*-darwin* *-*-darwin[912]* *-*-uclinux* } } */
 /* { dg-options "-fexceptions -fnon-call-exceptions -O2" } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 /* Verify that cleanups work with exception handling through realtime
    signal frames.  */
 
diff --git a/gcc/testsuite/g++.dg/ext/is_invocable2.C b/gcc/testsuite/g++.dg/ext/is_invocable2.C
index a68aefd3e13b..3df31656fcba 100644
--- a/gcc/testsuite/g++.dg/ext/is_invocable2.C
+++ b/gcc/testsuite/g++.dg/ext/is_invocable2.C
@@ -1,4 +1,5 @@
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "requires hosted libstdc++ for functional function" { ! hostedlib } }
 // __is_invocable should handle std::reference_wrapper correctly.
 
 #include <functional>
diff --git a/gcc/testsuite/g++.dg/goacc/pr107028-2.C b/gcc/testsuite/g++.dg/goacc/pr107028-2.C
index cf741bd78c7a..7bef75090a8f 100644
--- a/gcc/testsuite/g++.dg/goacc/pr107028-2.C
+++ b/gcc/testsuite/g++.dg/goacc/pr107028-2.C
@@ -1,5 +1,6 @@
 // { dg-do compile }
 // { dg-additional-options "-fdump-tree-gimple" }
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <cstdlib>
 
diff --git a/gcc/testsuite/g++.dg/gomp/has_device_addr-non-lvalue-1.C b/gcc/testsuite/g++.dg/gomp/has_device_addr-non-lvalue-1.C
index 3d778538d3ab..295b1b7cc84e 100644
--- a/gcc/testsuite/g++.dg/gomp/has_device_addr-non-lvalue-1.C
+++ b/gcc/testsuite/g++.dg/gomp/has_device_addr-non-lvalue-1.C
@@ -1,4 +1,5 @@
 // { dg-do compile }
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
 
 #include <cstdio>
 #include <cstring>
diff --git a/gcc/testsuite/g++.dg/gomp/ind-base-3.C b/gcc/testsuite/g++.dg/gomp/ind-base-3.C
index 7695b1f907e1..e3ecdddf9cb2 100644
--- a/gcc/testsuite/g++.dg/gomp/ind-base-3.C
+++ b/gcc/testsuite/g++.dg/gomp/ind-base-3.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
+
 #include <cassert>
 
 struct S {
diff --git a/gcc/testsuite/g++.dg/gomp/map-assignment-1.C b/gcc/testsuite/g++.dg/gomp/map-assignment-1.C
index 5979ec379f19..17862ab3b169 100644
--- a/gcc/testsuite/g++.dg/gomp/map-assignment-1.C
+++ b/gcc/testsuite/g++.dg/gomp/map-assignment-1.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
+
 #include <cassert>
 
 int main (int argc, char *argv[])
diff --git a/gcc/testsuite/g++.dg/gomp/map-lvalue-ref-1.C b/gcc/testsuite/g++.dg/gomp/map-lvalue-ref-1.C
index d720d4318ae4..2f75b238ebd0 100644
--- a/gcc/testsuite/g++.dg/gomp/map-lvalue-ref-1.C
+++ b/gcc/testsuite/g++.dg/gomp/map-lvalue-ref-1.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
+
 #include <cassert>
 
 int glob = 10;
diff --git a/gcc/testsuite/g++.dg/gomp/map-ptrmem-1.C b/gcc/testsuite/g++.dg/gomp/map-ptrmem-1.C
index c4023f59fc60..110996b349c1 100644
--- a/gcc/testsuite/g++.dg/gomp/map-ptrmem-1.C
+++ b/gcc/testsuite/g++.dg/gomp/map-ptrmem-1.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
+
 #include <cassert>
 
 struct S {
diff --git a/gcc/testsuite/g++.dg/gomp/map-ptrmem-2.C b/gcc/testsuite/g++.dg/gomp/map-ptrmem-2.C
index fbf379da0eb2..644e5bb3c84f 100644
--- a/gcc/testsuite/g++.dg/gomp/map-ptrmem-2.C
+++ b/gcc/testsuite/g++.dg/gomp/map-ptrmem-2.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
+
 #include <cassert>
 
 struct S {
diff --git a/gcc/testsuite/g++.dg/gomp/map-static-cast-lvalue-1.C b/gcc/testsuite/g++.dg/gomp/map-static-cast-lvalue-1.C
index 3af9668202cb..bc9d4dc25d7a 100644
--- a/gcc/testsuite/g++.dg/gomp/map-static-cast-lvalue-1.C
+++ b/gcc/testsuite/g++.dg/gomp/map-static-cast-lvalue-1.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
+
 #include <cassert>
 
 int foo (int x)
diff --git a/gcc/testsuite/g++.dg/gomp/map-ternary-1.C b/gcc/testsuite/g++.dg/gomp/map-ternary-1.C
index 7b365a909bbb..7017fbd30849 100644
--- a/gcc/testsuite/g++.dg/gomp/map-ternary-1.C
+++ b/gcc/testsuite/g++.dg/gomp/map-ternary-1.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
+
 #include <cassert>
 
 int foo (bool yesno)
diff --git a/gcc/testsuite/g++.dg/gomp/member-array-2.C b/gcc/testsuite/g++.dg/gomp/member-array-2.C
index caf8ece42624..a4e3a220c41b 100644
--- a/gcc/testsuite/g++.dg/gomp/member-array-2.C
+++ b/gcc/testsuite/g++.dg/gomp/member-array-2.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
+
 #include <cassert>
 
 typedef int intarr100[100];
diff --git a/gcc/testsuite/g++.dg/gomp/pr71910.C b/gcc/testsuite/g++.dg/gomp/pr71910.C
index 0063be8a9b0f..aea9483f4396 100644
--- a/gcc/testsuite/g++.dg/gomp/pr71910.C
+++ b/gcc/testsuite/g++.dg/gomp/pr71910.C
@@ -1,6 +1,7 @@
 // PR target/71910
 // { dg-do compile }
 // { dg-additional-options "-O2" }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/gomp/pr91118-1.C b/gcc/testsuite/g++.dg/gomp/pr91118-1.C
index f29d69db0847..2ed7e2eabe2a 100644
--- a/gcc/testsuite/g++.dg/gomp/pr91118-1.C
+++ b/gcc/testsuite/g++.dg/gomp/pr91118-1.C
@@ -1,6 +1,7 @@
 // PR c++/91118
 // { dg-do compile }
 // { dg-additional-options "-fsanitize=undefined" }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
 
 #include <iostream>
 
diff --git a/gcc/testsuite/g++.dg/gomp/sink-2.C b/gcc/testsuite/g++.dg/gomp/sink-2.C
index d1681a77aadc..26669ef588e7 100644
--- a/gcc/testsuite/g++.dg/gomp/sink-2.C
+++ b/gcc/testsuite/g++.dg/gomp/sink-2.C
@@ -1,4 +1,5 @@
 /* { dg-do compile } */
+/* { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } } */
 
 /* Tests iterators are allowed in ordered loops and that we keep track
    of the original iterator DECL for diagnostic purposes.  */
diff --git a/gcc/testsuite/g++.dg/gomp/target-lambda-2.C b/gcc/testsuite/g++.dg/gomp/target-lambda-2.C
index bdf2564cd042..7c504de36dfd 100644
--- a/gcc/testsuite/g++.dg/gomp/target-lambda-2.C
+++ b/gcc/testsuite/g++.dg/gomp/target-lambda-2.C
@@ -1,5 +1,7 @@
 // We use 'auto' without a function return type, so specify dialect here
 // { dg-additional-options "-std=c++14 -fdump-tree-gimple" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib abort" { ! hostedlib } }
+
 #include <cstdlib>
 
 #define N 10
diff --git a/gcc/testsuite/g++.dg/gomp/target-this-3.C b/gcc/testsuite/g++.dg/gomp/target-this-3.C
index bc2cc0b297dc..f4996b131142 100644
--- a/gcc/testsuite/g++.dg/gomp/target-this-3.C
+++ b/gcc/testsuite/g++.dg/gomp/target-this-3.C
@@ -1,5 +1,7 @@
 // { dg-do compile }
 // { dg-additional-options "-fdump-tree-gimple" }
+// { dg-skip-if "requires hosted libstdc++ for cstring" { ! hostedlib } }
+
 #include <cstdlib>
 #include <cstring>
 extern "C" void abort ();
diff --git a/gcc/testsuite/g++.dg/gomp/target-this-4.C b/gcc/testsuite/g++.dg/gomp/target-this-4.C
index 9ade3cc0b2b1..bbcde3df23b5 100644
--- a/gcc/testsuite/g++.dg/gomp/target-this-4.C
+++ b/gcc/testsuite/g++.dg/gomp/target-this-4.C
@@ -1,5 +1,7 @@
 // We use 'auto' without a function return type, so specify dialect here
 // { dg-additional-options "-std=c++14 -fdump-tree-gimple" }
+// { dg-skip-if "requires hosted libstdc++ for cstring" { ! hostedlib } }
+
 #include <cstdlib>
 #include <cstring>
 
diff --git a/gcc/testsuite/g++.dg/gomp/tile-1.C b/gcc/testsuite/g++.dg/gomp/tile-1.C
index cc45dcdf8805..bcfdc9438290 100644
--- a/gcc/testsuite/g++.dg/gomp/tile-1.C
+++ b/gcc/testsuite/g++.dg/gomp/tile-1.C
@@ -1,4 +1,5 @@
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/gomp/tile-2.C b/gcc/testsuite/g++.dg/gomp/tile-2.C
index dcaa8d736bbf..757b7fc60cee 100644
--- a/gcc/testsuite/g++.dg/gomp/tile-2.C
+++ b/gcc/testsuite/g++.dg/gomp/tile-2.C
@@ -1,4 +1,5 @@
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/gomp/unroll-1.C b/gcc/testsuite/g++.dg/gomp/unroll-1.C
index d4b73004b7cf..f9cb65af5d88 100644
--- a/gcc/testsuite/g++.dg/gomp/unroll-1.C
+++ b/gcc/testsuite/g++.dg/gomp/unroll-1.C
@@ -1,4 +1,5 @@
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/gomp/unroll-2.C b/gcc/testsuite/g++.dg/gomp/unroll-2.C
index d214d728c3a4..1bc21724c78d 100644
--- a/gcc/testsuite/g++.dg/gomp/unroll-2.C
+++ b/gcc/testsuite/g++.dg/gomp/unroll-2.C
@@ -1,4 +1,5 @@
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/gomp/unroll-3.C b/gcc/testsuite/g++.dg/gomp/unroll-3.C
index 6ef24ac2ffbc..1afe6f4d0656 100644
--- a/gcc/testsuite/g++.dg/gomp/unroll-3.C
+++ b/gcc/testsuite/g++.dg/gomp/unroll-3.C
@@ -1,5 +1,6 @@
 // { dg-do compile { target c++11 } }
 // { dg-additional-options "-fdump-tree-original -fdump-tree-gimple" }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/graphite/id-1.C b/gcc/testsuite/g++.dg/graphite/id-1.C
index 5770e905dfbd..987d326e3b69 100644
--- a/gcc/testsuite/g++.dg/graphite/id-1.C
+++ b/gcc/testsuite/g++.dg/graphite/id-1.C
@@ -1,3 +1,5 @@
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
+
 #include <vector>
 
 template <int rank, int dim> class Tensor;
diff --git a/gcc/testsuite/g++.dg/graphite/pr42130.C b/gcc/testsuite/g++.dg/graphite/pr42130.C
index ee31abad0ee0..47052cfecbcc 100644
--- a/gcc/testsuite/g++.dg/graphite/pr42130.C
+++ b/gcc/testsuite/g++.dg/graphite/pr42130.C
@@ -1,4 +1,7 @@
 /* { dg-options "-O2 -fgraphite-identity -fno-tree-ch" } */
+/* { dg-do run  } */
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
+
 #include <vector>
 
 using std::vector;
@@ -15,5 +18,3 @@ int main()
   return 0;
 }
 
-/* { dg-do run  } */
-
diff --git a/gcc/testsuite/g++.dg/init/new11.C b/gcc/testsuite/g++.dg/init/new11.C
index a13f262aa64a..11c4fe5732f9 100644
--- a/gcc/testsuite/g++.dg/init/new11.C
+++ b/gcc/testsuite/g++.dg/init/new11.C
@@ -1,5 +1,6 @@
 // PR c++/17670
 // { dg-do run }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib size_t" { ! hostedlib } }
 
 #include <cstdlib>
 #include <new>
diff --git a/gcc/testsuite/g++.dg/init/value3.C b/gcc/testsuite/g++.dg/init/value3.C
index 487baabeceb6..c544ec665326 100644
--- a/gcc/testsuite/g++.dg/init/value3.C
+++ b/gcc/testsuite/g++.dg/init/value3.C
@@ -1,5 +1,6 @@
 // Testcase for value-initialization in new-expressions.
 // { dg-do run }
+// { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } }
 
 #include <stdlib.h>
 #include <string.h>
diff --git a/gcc/testsuite/g++.dg/lto/pr66180_0.C b/gcc/testsuite/g++.dg/lto/pr66180_0.C
index cfb496bec4ad..fa597dea88bb 100644
--- a/gcc/testsuite/g++.dg/lto/pr66180_0.C
+++ b/gcc/testsuite/g++.dg/lto/pr66180_0.C
@@ -1,6 +1,8 @@
 // { dg-lto-do link }
 // { dg-require-effective-target lto_incremental }
 // { dg-lto-options { { -flto -std=c++14 -r -nostdlib } } }
+/* { dg-skip-if "requires hosted libstdc++ for memory make_unique" { ! hostedlib } } */
+
 #include <memory>
 namespace {
 class A {
diff --git a/gcc/testsuite/g++.dg/lto/pr80287_0.C b/gcc/testsuite/g++.dg/lto/pr80287_0.C
index ea655c97b29d..9ca9f7f15f6e 100644
--- a/gcc/testsuite/g++.dg/lto/pr80287_0.C
+++ b/gcc/testsuite/g++.dg/lto/pr80287_0.C
@@ -1,5 +1,6 @@
 // { dg-lto-options { "-std=gnu++17" } }
 // { dg-lto-do run }
+// { dg-skip-if "requires hosted libstdc++ for any" { ! hostedlib } }
 
 // Copyright (C) 2014-2017 Free Software Foundation, Inc.
 //
diff --git a/gcc/testsuite/g++.dg/modules/hello-2_a.C b/gcc/testsuite/g++.dg/modules/hello-2_a.C
index a8f8b813839f..89bb92b85fb5 100644
--- a/gcc/testsuite/g++.dg/modules/hello-2_a.C
+++ b/gcc/testsuite/g++.dg/modules/hello-2_a.C
@@ -1,6 +1,7 @@
 // PR c++/105512
 // { dg-additional-options -fmodules-ts }
 // { dg-module-cmi Hello2 }
+// { dg-skip-if "requires hosted libstdc++ for string" { ! hostedlib } }
 
 module;
 #include <string>
diff --git a/gcc/testsuite/g++.dg/modules/hello-2_b.C b/gcc/testsuite/g++.dg/modules/hello-2_b.C
index dafd3c2f7a1b..35b6ea58939d 100644
--- a/gcc/testsuite/g++.dg/modules/hello-2_b.C
+++ b/gcc/testsuite/g++.dg/modules/hello-2_b.C
@@ -1,6 +1,7 @@
 // PR c++/105512
 // { dg-additional-options -fmodules-ts }
 // { dg-module-do run }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
 
 #include <iostream>
 import Hello2;
diff --git a/gcc/testsuite/g++.dg/modules/p1689-2.C b/gcc/testsuite/g++.dg/modules/p1689-2.C
index 5d7fe52a809b..8c7afe4050e5 100644
--- a/gcc/testsuite/g++.dg/modules/p1689-2.C
+++ b/gcc/testsuite/g++.dg/modules/p1689-2.C
@@ -5,6 +5,7 @@
 // { dg-additional-options -fdeps-format=p1689r5 }
 // { dg-additional-options -fdeps-target=p1689-2.o }
 // { dg-additional-options -fdeps-file=p1689-2.ddi }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
 
 // Export a module partition that uses modules.
 
diff --git a/gcc/testsuite/g++.dg/modules/pr99023_a.X b/gcc/testsuite/g++.dg/modules/pr99023_a.X
index 507e95695356..6ae2cf4b2a3e 100644
--- a/gcc/testsuite/g++.dg/modules/pr99023_a.X
+++ b/gcc/testsuite/g++.dg/modules/pr99023_a.X
@@ -1,6 +1,7 @@
 // PR c++/99023, ICE
 // { dg-require-effective-target c++20_only }
 // { dg-additional-options {-x c++-system-header initializer_list -fmodules-ts --param ggc-min-expand=0} }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
 
 // { dg-prune-output {linker input file unused} }
 
diff --git a/gcc/testsuite/g++.dg/modules/pr99166_a.X b/gcc/testsuite/g++.dg/modules/pr99166_a.X
index 0649d053b306..24527a011eb0 100644
--- a/gcc/testsuite/g++.dg/modules/pr99166_a.X
+++ b/gcc/testsuite/g++.dg/modules/pr99166_a.X
@@ -1,5 +1,6 @@
 // PR c++/99166, diagnostic
 // { dg-additional-options {-x c++-system-header iostream -fmodules-ts -flang-info-module-cmi} }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
 
 // { dg-regexp {[^\n]*iostream: note: writing CMI 'gcm.cache/[^[\n]*iostream.gcm'\n} }
 // { dg-prune-output {linker input file unused} }
diff --git a/gcc/testsuite/g++.dg/modules/pr99166_b.C b/gcc/testsuite/g++.dg/modules/pr99166_b.C
index ac20116e641e..25b90daf9876 100644
--- a/gcc/testsuite/g++.dg/modules/pr99166_b.C
+++ b/gcc/testsuite/g++.dg/modules/pr99166_b.C
@@ -1,4 +1,6 @@
 // { dg-additional-options {-fmodules-ts -flang-info-module-cmi=<iostream>} }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
+
 export module Foo;
 import <iostream>;
 
diff --git a/gcc/testsuite/g++.dg/modules/pr99425-2_a.X b/gcc/testsuite/g++.dg/modules/pr99425-2_a.X
index 9a44dc335671..36f91637e763 100644
--- a/gcc/testsuite/g++.dg/modules/pr99425-2_a.X
+++ b/gcc/testsuite/g++.dg/modules/pr99425-2_a.X
@@ -3,5 +3,6 @@
 
 // { dg-additional-options {-x c++-system-header stdexcept -fmodules-ts} }
 // { dg-prune-output {linker input file unused} }
+// { dg-skip-if "requires hosted libstdc++ for stdexcept" { ! hostedlib } }
 
 No! DO NOT COMPILE;
diff --git a/gcc/testsuite/g++.dg/modules/pr99425-2_b.X b/gcc/testsuite/g++.dg/modules/pr99425-2_b.X
index 5e453542cd17..baf653a232a3 100644
--- a/gcc/testsuite/g++.dg/modules/pr99425-2_b.X
+++ b/gcc/testsuite/g++.dg/modules/pr99425-2_b.X
@@ -1,4 +1,5 @@
 // { dg-additional-options {-x c++-system-header mutex -fmodules-ts} }
 // { dg-prune-output {linker input file unused} }
+// { dg-skip-if "requires hosted libstdc++ for mutex" { ! hostedlib } }
 
 No! DO NOT COMPILE;
diff --git a/gcc/testsuite/g++.dg/modules/xtreme-header-7_a.H b/gcc/testsuite/g++.dg/modules/xtreme-header-7_a.H
index bf7859fba991..9c42b7a38ced 100644
--- a/gcc/testsuite/g++.dg/modules/xtreme-header-7_a.H
+++ b/gcc/testsuite/g++.dg/modules/xtreme-header-7_a.H
@@ -1,4 +1,5 @@
 // { dg-additional-options -fmodule-header }
+// { dg-skip-if "requires hosted libstdc++ for any in xtreme-header.h" { ! hostedlib } }
 
 // { dg-module-cmi {} }
 #include "xtreme-header.h"
diff --git a/gcc/testsuite/g++.dg/modules/xtreme-header-7_b.C b/gcc/testsuite/g++.dg/modules/xtreme-header-7_b.C
index 3992a24501b9..b7df2723b9d2 100644
--- a/gcc/testsuite/g++.dg/modules/xtreme-header-7_b.C
+++ b/gcc/testsuite/g++.dg/modules/xtreme-header-7_b.C
@@ -1,5 +1,6 @@
 // A version of xtreme-header_b.C that doesn't use -fno-module-lazy.
 // { dg-additional-options -fmodules-ts }
+// { dg-skip-if "requires hosted libstdc++ for any in xtreme-header.h" { ! hostedlib } }
 
 #include "xtreme-header.h"
 import "xtreme-header-7_a.H";
diff --git a/gcc/testsuite/g++.dg/opt/builtins2.C b/gcc/testsuite/g++.dg/opt/builtins2.C
index 658c128d62de..b273f1f63b6e 100644
--- a/gcc/testsuite/g++.dg/opt/builtins2.C
+++ b/gcc/testsuite/g++.dg/opt/builtins2.C
@@ -2,6 +2,7 @@
 // We should handle asinh as a built-in in C++0x mode, even when strict.
 // { dg-do compile { target c++11 } }
 // { dg-final { scan-assembler-not "asinh" } }
+// { dg-skip-if "requires hosted libstdc++ for math" { ! hostedlib } }
 
 #include <math.h>
 
diff --git a/gcc/testsuite/g++.dg/opt/pr103989.C b/gcc/testsuite/g++.dg/opt/pr103989.C
index 4604811b42a1..dfb14546e352 100644
--- a/gcc/testsuite/g++.dg/opt/pr103989.C
+++ b/gcc/testsuite/g++.dg/opt/pr103989.C
@@ -1,5 +1,6 @@
 // { dg-require-effective-target c++17 }
 // { dg-options "-Og -Wall" }
+// { dg-skip-if "requires hosted libstdc++ for memory shared_ptr" { ! hostedlib } }
 
 #include <optional>
 #include <memory>
diff --git a/gcc/testsuite/g++.dg/opt/pr110879.C b/gcc/testsuite/g++.dg/opt/pr110879.C
index 57556605a511..3445850ccbf7 100644
--- a/gcc/testsuite/g++.dg/opt/pr110879.C
+++ b/gcc/testsuite/g++.dg/opt/pr110879.C
@@ -1,5 +1,6 @@
 // { dg-do compile { target c++11 } }
 // { dg-options "-O3 -fdump-tree-optimized" }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/opt/pr65074.C b/gcc/testsuite/g++.dg/opt/pr65074.C
index 01c5926e6626..0124c5182392 100644
--- a/gcc/testsuite/g++.dg/opt/pr65074.C
+++ b/gcc/testsuite/g++.dg/opt/pr65074.C
@@ -1,6 +1,7 @@
 // PR middle-end/65074
 // { dg-do link { target pie } }
 // { dg-options "-pie -fpie -O2" }
+// { dg-skip-if "requires hosted libstdc++ for fstream" { ! hostedlib } }
 
 #include <fstream>
 
diff --git a/gcc/testsuite/g++.dg/opt/pr66119.C b/gcc/testsuite/g++.dg/opt/pr66119.C
index c129633894ff..d1b1845a2586 100644
--- a/gcc/testsuite/g++.dg/opt/pr66119.C
+++ b/gcc/testsuite/g++.dg/opt/pr66119.C
@@ -4,6 +4,7 @@
 
 /* { dg-do compile  { target { { i?86-*-* x86_64-*-* } && c++11 } }  }  */
 /* { dg-options "-O3 -mavx -fdump-tree-sra -march=slm -mtune=slm -fno-early-inlining" } */
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 #include <immintrin.h>
 
diff --git a/gcc/testsuite/g++.dg/opt/pr80385.C b/gcc/testsuite/g++.dg/opt/pr80385.C
index f18abc941f3f..de3ae17f07d1 100644
--- a/gcc/testsuite/g++.dg/opt/pr80385.C
+++ b/gcc/testsuite/g++.dg/opt/pr80385.C
@@ -1,6 +1,7 @@
 // PR rtl-optimization/80385
 // { dg-do compile { target { i?86-*-* x86_64-*-* } } }
 // { dg-options "-Ofast -msse2" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 #include <x86intrin.h>
 
diff --git a/gcc/testsuite/g++.dg/opt/pr94223.C b/gcc/testsuite/g++.dg/opt/pr94223.C
index 0de012de5040..f06f1059b3db 100644
--- a/gcc/testsuite/g++.dg/opt/pr94223.C
+++ b/gcc/testsuite/g++.dg/opt/pr94223.C
@@ -1,5 +1,6 @@
 // PR c++/94223
 // { dg-do compile }
 // { dg-options "-O0 -std=c++2a -fcompare-debug" }
+// { dg-skip-if "requires hosted libstdc++ for string" { ! hostedlib } }
 
 #include "../cpp1z/init-statement6.C"
diff --git a/gcc/testsuite/g++.dg/other/i386-1.C b/gcc/testsuite/g++.dg/other/i386-1.C
index ec572ec948d6..108af19e4c83 100644
--- a/gcc/testsuite/g++.dg/other/i386-1.C
+++ b/gcc/testsuite/g++.dg/other/i386-1.C
@@ -1,6 +1,7 @@
 /* { dg-do run { target i?86-*-* x86_64-*-* } } */
 /* { dg-options "-msse2" } */
 /* { dg-require-effective-target sse2_runtime } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <xmmintrin.h>
 
diff --git a/gcc/testsuite/g++.dg/other/i386-11.C b/gcc/testsuite/g++.dg/other/i386-11.C
index 8e06617fca55..f28cfcfa14b0 100644
--- a/gcc/testsuite/g++.dg/other/i386-11.C
+++ b/gcc/testsuite/g++.dg/other/i386-11.C
@@ -2,6 +2,7 @@
 // { dg-do compile { target i?86-*-* x86_64-*-* } }
 // { dg-require-effective-target c++11 }
 // { dg-options "-O2 -msse2" }
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <xmmintrin.h>
 #include <emmintrin.h>
diff --git a/gcc/testsuite/g++.dg/other/i386-2.C b/gcc/testsuite/g++.dg/other/i386-2.C
index 5a4005c063c4..d0492dc5d688 100644
--- a/gcc/testsuite/g++.dg/other/i386-2.C
+++ b/gcc/testsuite/g++.dg/other/i386-2.C
@@ -1,5 +1,6 @@
 /* { dg-do compile { target i?86-*-* x86_64-*-* } } */
 /* { dg-options "-O -pedantic-errors -march=k8 -msse4a -m3dnow -mavx -mavx2 -mfma4 -mxop -maes -mpclmul -mpopcnt -mabm -mlzcnt -mbmi -mbmi2 -mtbm -mlwp -mfsgsbase -mrdrnd -mf16c -mfma -mrtm -mrdseed -mprfchw -madx -mfxsr -mxsaveopt -msha -mxsavec -mxsaves -mclflushopt -mclwb -mmwaitx -mclzero -mpku -msgx -mrdpid -mgfni -mpconfig -mwbnoinvd -menqcmd -mavx512vp2intersect -mserialize -mtsxldtrk -mamx-tile -mamx-int8 -mamx-bf16 -mkl -mwidekl -mavxvnni -mavxifma -mavxvnniint8 -mavxneconvert -mcmpccxadd -mamx-fp16 -mprefetchi -mraoint -mamx-complex -mavxvnniint16 -msm3 -msha512 -msm4 -mavx10.2-512" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 /* Test that {,x,e,p,t,s,w,a,b,i}mmintrin.h, mm3dnow.h, fma4intrin.h,
    xopintrin.h, abmintrin.h, bmiintrin.h, tbmintrin.h, lwpintrin.h,
diff --git a/gcc/testsuite/g++.dg/other/i386-3.C b/gcc/testsuite/g++.dg/other/i386-3.C
index 51977ae6159b..3bfc83915fc6 100644
--- a/gcc/testsuite/g++.dg/other/i386-3.C
+++ b/gcc/testsuite/g++.dg/other/i386-3.C
@@ -1,5 +1,6 @@
 /* { dg-do compile { target i?86-*-* x86_64-*-* } } */
 /* { dg-options "-O -fkeep-inline-functions -march=k8 -msse4a -m3dnow -mavx -mavx2 -mfma4 -mxop -maes -mpclmul -mpopcnt -mabm -mlzcnt -mbmi -mbmi2 -mtbm -mlwp -mfsgsbase -mrdrnd -mf16c -mfma -mrtm -mrdseed -mprfchw -madx -mfxsr -mxsaveopt -msha -mxsavec -mxsaves -mclflushopt -mclwb -mmwaitx -mclzero -mpku -msgx -mrdpid -mgfni -mpconfig -mwbnoinvd -menqcmd -mavx512vp2intersect -mserialize -mtsxldtrk -mamx-tile -mamx-int8 -mamx-bf16 -mkl -mwidekl -mavxvnni -mavxifma -mavxvnniint8 -mavxneconvert -mcmpccxadd -mamx-fp16 -mprefetchi -mraoint -mamx-complex -mavxvnniint16 -msm3 -msha512 -msm4 -mavx10.2-512" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 /* Test that {,x,e,p,t,s,w,a,b,i}mmintrin.h, mm3dnow.h, fma4intrin.h,
    xopintrin.h, abmintrin.h, bmiintrin.h, tbmintrin.h, lwpintrin.h,
diff --git a/gcc/testsuite/g++.dg/other/i386-4.C b/gcc/testsuite/g++.dg/other/i386-4.C
index 3e0d94e952cd..3cd6f4cb0531 100644
--- a/gcc/testsuite/g++.dg/other/i386-4.C
+++ b/gcc/testsuite/g++.dg/other/i386-4.C
@@ -1,5 +1,6 @@
 /* { dg-do compile { target i?86-*-* x86_64-*-* } } */
 /* { dg-options "-O1 -msse2" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <xmmintrin.h>
 
diff --git a/gcc/testsuite/g++.dg/other/i386-7.C b/gcc/testsuite/g++.dg/other/i386-7.C
index e2ad51e528dd..704c5b7e24f1 100644
--- a/gcc/testsuite/g++.dg/other/i386-7.C
+++ b/gcc/testsuite/g++.dg/other/i386-7.C
@@ -2,6 +2,7 @@
 /* We were using SSE4.2 builtins without the extension available.  */
 /* { dg-do compile { target i?86-*-* x86_64-*-* } } */
 /* { dg-options "-O -pedantic-errors" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <x86intrin.h>
 
diff --git a/gcc/testsuite/g++.dg/other/i386-8.C b/gcc/testsuite/g++.dg/other/i386-8.C
index a9465ef12bc3..6bb229f19281 100644
--- a/gcc/testsuite/g++.dg/other/i386-8.C
+++ b/gcc/testsuite/g++.dg/other/i386-8.C
@@ -2,6 +2,7 @@
 // { dg-do compile { target i?86-*-* x86_64-*-* } }
 // { dg-options "-O2 -msse2" }
 // { dg-options "-O2 -msse2 -fpic" { target fpic } }
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <xmmintrin.h>
 
diff --git a/gcc/testsuite/g++.dg/other/mmintrin.C b/gcc/testsuite/g++.dg/other/mmintrin.C
index 417a1acc6de1..3daf378916ea 100644
--- a/gcc/testsuite/g++.dg/other/mmintrin.C
+++ b/gcc/testsuite/g++.dg/other/mmintrin.C
@@ -1,4 +1,5 @@
 // { dg-do compile { target i?86-*-* x86_64-*-* } }
 // { dg-options "-msse" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 #include <xmmintrin.h>
diff --git a/gcc/testsuite/g++.dg/other/pr34435.C b/gcc/testsuite/g++.dg/other/pr34435.C
index 5352a40eb691..8b7efd4fbfef 100644
--- a/gcc/testsuite/g++.dg/other/pr34435.C
+++ b/gcc/testsuite/g++.dg/other/pr34435.C
@@ -1,5 +1,6 @@
 /* { dg-do compile { target i?86-*-* x86_64-*-* } } */
 /* { dg-options "-msse2 -Wno-abi" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <emmintrin.h>
 
diff --git a/gcc/testsuite/g++.dg/other/pr40446.C b/gcc/testsuite/g++.dg/other/pr40446.C
index 72cd1960649e..3d3a6b8b9659 100644
--- a/gcc/testsuite/g++.dg/other/pr40446.C
+++ b/gcc/testsuite/g++.dg/other/pr40446.C
@@ -2,6 +2,7 @@
 // { dg-do run { target i?86-*-* x86_64-*-* } }
 // { dg-options "-O1 -msse2" }
 // { dg-require-effective-target sse2_runtime }
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <emmintrin.h>
 
diff --git a/gcc/testsuite/g++.dg/other/pr49133.C b/gcc/testsuite/g++.dg/other/pr49133.C
index a59687f9c742..bd30cc749b98 100644
--- a/gcc/testsuite/g++.dg/other/pr49133.C
+++ b/gcc/testsuite/g++.dg/other/pr49133.C
@@ -1,6 +1,7 @@
 /* { dg-do run { target i?86-*-* x86_64-*-* } } */
 /* { dg-options "-O2 -msse2" } */
 /* { dg-require-effective-target sse2_runtime } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <xmmintrin.h>
 
diff --git a/gcc/testsuite/g++.dg/pch/system-1.Hs b/gcc/testsuite/g++.dg/pch/system-1.Hs
index 604782e4dc7e..d08c6c05c998 100644
--- a/gcc/testsuite/g++.dg/pch/system-1.Hs
+++ b/gcc/testsuite/g++.dg/pch/system-1.Hs
@@ -1 +1,3 @@
+// { dg-skip-if "requires hosted libstdc++ for iostream in system-1.H" { ! hostedlib } }
+
 #include <iostream>
diff --git a/gcc/testsuite/g++.dg/pch/system-2.Hs b/gcc/testsuite/g++.dg/pch/system-2.Hs
index 13c79d104efc..057072114000 100644
--- a/gcc/testsuite/g++.dg/pch/system-2.Hs
+++ b/gcc/testsuite/g++.dg/pch/system-2.Hs
@@ -1,2 +1,4 @@
+// { dg-skip-if "requires hosted libstdc++ for iostream in system-1.H" { ! hostedlib } }
+
 #include <iostream>
 #include <string>
diff --git a/gcc/testsuite/g++.dg/pr80481.C b/gcc/testsuite/g++.dg/pr80481.C
index c2931100906f..07dcdf09e004 100644
--- a/gcc/testsuite/g++.dg/pr80481.C
+++ b/gcc/testsuite/g++.dg/pr80481.C
@@ -4,6 +4,7 @@
 // { dg-options "-Ofast -funroll-loops -fopenmp -march=skylake-avx512" }
 // Disabling epilogues until we find a better way to deal with scans.
 // { dg-additional-options "--param vect-epilogues-nomask=0" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 
 #include <math.h>
diff --git a/gcc/testsuite/g++.dg/tm/inherit2.C b/gcc/testsuite/g++.dg/tm/inherit2.C
index 366f9b30e909..adaf8a9a932c 100644
--- a/gcc/testsuite/g++.dg/tm/inherit2.C
+++ b/gcc/testsuite/g++.dg/tm/inherit2.C
@@ -1,5 +1,6 @@
 // Testcase from TM TS
 // { dg-options "-std=c++14 -fgnu-tm" }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
 
 #include <iostream>
 
diff --git a/gcc/testsuite/g++.dg/tm/pr46270.C b/gcc/testsuite/g++.dg/tm/pr46270.C
index 291e620a3879..64ebb6bc5e65 100644
--- a/gcc/testsuite/g++.dg/tm/pr46270.C
+++ b/gcc/testsuite/g++.dg/tm/pr46270.C
@@ -1,5 +1,6 @@
 // { dg-do compile }
 // { dg-options "-fgnu-tm" }
+// { dg-skip-if "requires hosted libstdc++ for list" { ! hostedlib } }
 
 #include <list>
 class Game
diff --git a/gcc/testsuite/g++.dg/torture/pr10148.C b/gcc/testsuite/g++.dg/torture/pr10148.C
index ed278f9f8d85..b5483f3ca315 100644
--- a/gcc/testsuite/g++.dg/torture/pr10148.C
+++ b/gcc/testsuite/g++.dg/torture/pr10148.C
@@ -1,4 +1,5 @@
 /* { dg-do run } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
 
 #include <stdlib.h>
 #include <assert.h>
diff --git a/gcc/testsuite/g++.dg/torture/pr86763.C b/gcc/testsuite/g++.dg/torture/pr86763.C
index 8455ac9ce129..0d0061c78bc2 100644
--- a/gcc/testsuite/g++.dg/torture/pr86763.C
+++ b/gcc/testsuite/g++.dg/torture/pr86763.C
@@ -1,6 +1,7 @@
 // { dg-do run { target { *-*-linux* } } }
 // { dg-additional-options "-fschedule-insns2 -fstrict-aliasing" }
 // { dg-additional-options "-lrt" }
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
 
 #include <cstdint>
 #include <cassert>
diff --git a/gcc/testsuite/g++.dg/torture/pr91334.C b/gcc/testsuite/g++.dg/torture/pr91334.C
index ba79d712b079..187ab84e978b 100644
--- a/gcc/testsuite/g++.dg/torture/pr91334.C
+++ b/gcc/testsuite/g++.dg/torture/pr91334.C
@@ -1,5 +1,6 @@
 /* PR c++/91334.  */
 /* { dg-do compile } */
+/* { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } } */
 
 #include <new>
 #include <stdlib.h>
diff --git a/gcc/testsuite/g++.dg/torture/pr91606.C b/gcc/testsuite/g++.dg/torture/pr91606.C
index 37a05a5e3a5f..385c20c5da5b 100644
--- a/gcc/testsuite/g++.dg/torture/pr91606.C
+++ b/gcc/testsuite/g++.dg/torture/pr91606.C
@@ -1,5 +1,6 @@
 /* { dg-do run } */
 /* { dg-additional-options "-fstrict-aliasing" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib size_t" { ! hostedlib } } */
 
 #include <cstdlib>
 #include <array>
diff --git a/gcc/testsuite/g++.dg/tree-ssa/copyprop.C b/gcc/testsuite/g++.dg/tree-ssa/copyprop.C
index bc9167ad1201..f94c7c6201c5 100644
--- a/gcc/testsuite/g++.dg/tree-ssa/copyprop.C
+++ b/gcc/testsuite/g++.dg/tree-ssa/copyprop.C
@@ -3,6 +3,7 @@
 // { dg-do compile { target { lp64 } } }
 // { dg-options  "-Wno-error -fno-exceptions -fno-tree-vrp -O2 -fprofile-generate  -finline-limit=500 -std=c++98"  }
 // { dg-additional-options "-Wno-return-type" }
+// { dg-skip-if "requires hosted libstdc++ for map" { ! hostedlib } }
 
 #include <map>
 #include <vector>
diff --git a/gcc/testsuite/g++.dg/tree-ssa/initlist-opt5.C b/gcc/testsuite/g++.dg/tree-ssa/initlist-opt5.C
index fc928bb54050..3126fe0ed8ae 100644
--- a/gcc/testsuite/g++.dg/tree-ssa/initlist-opt5.C
+++ b/gcc/testsuite/g++.dg/tree-ssa/initlist-opt5.C
@@ -1,6 +1,7 @@
 // PR c++/105838
 // { dg-additional-options -fdump-tree-gimple }
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "requires hosted libstdc++ for string" { ! hostedlib } }
 
 // Check that we call the basic_string constructor once (and define it once).
 // { dg-final { scan-tree-dump-times {>::basic_string} 2 "gimple" } }
diff --git a/gcc/testsuite/g++.dg/tree-ssa/loop-split-1.C b/gcc/testsuite/g++.dg/tree-ssa/loop-split-1.C
index 9581438b5364..898100653348 100644
--- a/gcc/testsuite/g++.dg/tree-ssa/loop-split-1.C
+++ b/gcc/testsuite/g++.dg/tree-ssa/loop-split-1.C
@@ -1,5 +1,7 @@
 /* { dg-do compile } */
 /* { dg-options "-O3 -fdump-tree-lsplit-details -std=c++11" } */
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
+
 #include <vector>
 #include <cmath>
 
diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr102216-2.C b/gcc/testsuite/g++.dg/tree-ssa/pr102216-2.C
index 8d351a9bad08..a49f180eb7bb 100644
--- a/gcc/testsuite/g++.dg/tree-ssa/pr102216-2.C
+++ b/gcc/testsuite/g++.dg/tree-ssa/pr102216-2.C
@@ -1,4 +1,6 @@
 /* { dg-options "-O2 -Wall" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstddef NULL" { ! hostedlib } } */
+
 #include <algorithm>
 
 static inline bool
diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr109849.C b/gcc/testsuite/g++.dg/tree-ssa/pr109849.C
index d06dbb104829..f5ce0a6a02b3 100644
--- a/gcc/testsuite/g++.dg/tree-ssa/pr109849.C
+++ b/gcc/testsuite/g++.dg/tree-ssa/pr109849.C
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-sra -fdump-tree-optimized" } */
+/* { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } } */
 
 #include <vector>
 typedef unsigned int uint32_t;
diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr20458.C b/gcc/testsuite/g++.dg/tree-ssa/pr20458.C
index d4e7d1a1a86f..9fd817a8f057 100644
--- a/gcc/testsuite/g++.dg/tree-ssa/pr20458.C
+++ b/gcc/testsuite/g++.dg/tree-ssa/pr20458.C
@@ -1,5 +1,6 @@
 /* { dg-do run } */
 /* { dg-options "-O2" } */
+/* { dg-skip-if "requires hosted libstdc++ for std::locale cdtor" { ! hostedlib } } */
 
 /* The tail call optimization would inapproriately tail call the 
    destructors due to not recognizing a call clobbered variable */
diff --git a/gcc/testsuite/g++.dg/uninit-pr105937.C b/gcc/testsuite/g++.dg/uninit-pr105937.C
index 26b4f74c5e1e..744817b1ba85 100644
--- a/gcc/testsuite/g++.dg/uninit-pr105937.C
+++ b/gcc/testsuite/g++.dg/uninit-pr105937.C
@@ -1,6 +1,7 @@
 // { dg-do compile }
 // { dg-require-effective-target c++17 }
 // { dg-options "-O2 -Wall" }
+// { dg-skip-if "requires hosted libstdc++ for cwchar" { ! hostedlib } }
 
 #include <stdint.h>
 #include <optional>
diff --git a/gcc/testsuite/g++.dg/vect/pr102421.cc b/gcc/testsuite/g++.dg/vect/pr102421.cc
index ccab6955c677..c8d3c741e732 100644
--- a/gcc/testsuite/g++.dg/vect/pr102421.cc
+++ b/gcc/testsuite/g++.dg/vect/pr102421.cc
@@ -1,6 +1,7 @@
 /* { dg-do compile } */
 /* { dg-additional-options "-O3" } */
 /* { dg-additional-options "-march=armv8.2-a+sve" { target aarch64-*-* } } */
+/* { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } } */
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/vect/pr105053.cc b/gcc/testsuite/g++.dg/vect/pr105053.cc
index 6deef8458fc8..142cd0c1ced5 100644
--- a/gcc/testsuite/g++.dg/vect/pr105053.cc
+++ b/gcc/testsuite/g++.dg/vect/pr105053.cc
@@ -1,5 +1,6 @@
 // { dg-require-effective-target c++11 }
 // { dg-require-effective-target int32plus }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 #include <tuple>
diff --git a/gcc/testsuite/g++.dg/vect/pr33426-ivdep-4.cc b/gcc/testsuite/g++.dg/vect/pr33426-ivdep-4.cc
index a0da5cf0aabc..26736ce3f329 100644
--- a/gcc/testsuite/g++.dg/vect/pr33426-ivdep-4.cc
+++ b/gcc/testsuite/g++.dg/vect/pr33426-ivdep-4.cc
@@ -2,6 +2,7 @@
 /* { dg-require-effective-target vect_int } */
 /* { dg-require-effective-target vect_int_mult } */
 /* { dg-additional-options "-std=c++11 -O3 -fopt-info-vec-optimized -fdump-tree-original -fdump-tree-gimple" } */
+/* { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } } */
 
 /* PR other/33426 */
 /* Testing whether #pragma ivdep is working.  */
diff --git a/gcc/testsuite/g++.dg/vect/pr64410.cc b/gcc/testsuite/g++.dg/vect/pr64410.cc
index ad4b085b5e05..407b893da4b8 100644
--- a/gcc/testsuite/g++.dg/vect/pr64410.cc
+++ b/gcc/testsuite/g++.dg/vect/pr64410.cc
@@ -1,6 +1,7 @@
 // { dg-do compile }
 // { dg-require-effective-target vect_double }
 // { dg-additional-options "-fexcess-precision=fast" }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 #include <complex>
diff --git a/gcc/testsuite/g++.dg/vect/slp-pr87105.cc b/gcc/testsuite/g++.dg/vect/slp-pr87105.cc
index 17017686792b..b4cb16a14bfd 100644
--- a/gcc/testsuite/g++.dg/vect/slp-pr87105.cc
+++ b/gcc/testsuite/g++.dg/vect/slp-pr87105.cc
@@ -3,6 +3,7 @@
 // { dg-require-effective-target vect_double }
 // For MIN/MAX recognition
 // { dg-additional-options "-ffast-math" }
+// { dg-skip-if "requires hosted libstdc++ for cmath" { ! hostedlib } }
 
 #include <algorithm>
 #include <cmath>
diff --git a/gcc/testsuite/g++.dg/vect/slp-pr98855.cc b/gcc/testsuite/g++.dg/vect/slp-pr98855.cc
index e0527c492d57..9b95a8d8948e 100644
--- a/gcc/testsuite/g++.dg/vect/slp-pr98855.cc
+++ b/gcc/testsuite/g++.dg/vect/slp-pr98855.cc
@@ -1,5 +1,6 @@
 // { dg-do compile { target i?86-*-* x86_64-*-* } }
 // { dg-additional-options "-fvect-cost-model=cheap -mavx2" }
+// { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } }
 
 #include <stdint.h>
 #include <stdlib.h>
diff --git a/gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc b/gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc
index 8c6ff22fcaab..3e5b42bcf1a2 100644
--- a/gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc
+++ b/gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-require-effective-target vect_int } */
+/* { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } } */
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/warn/Wdangling-reference14.C b/gcc/testsuite/g++.dg/warn/Wdangling-reference14.C
index 92b38a965e0a..b83266ee6a80 100644
--- a/gcc/testsuite/g++.dg/warn/Wdangling-reference14.C
+++ b/gcc/testsuite/g++.dg/warn/Wdangling-reference14.C
@@ -1,6 +1,7 @@
 // PR c++/113256
 // { dg-do compile { target c++14 } }
 // { dg-options "-Wdangling-reference" }
+// { dg-skip-if "requires hosted libstdc++ for cassert" { ! hostedlib } }
 
 #include <utility>
 #include <cassert>
diff --git a/gcc/testsuite/g++.dg/warn/Wdangling-reference17.C b/gcc/testsuite/g++.dg/warn/Wdangling-reference17.C
index 8cda5dea4447..f7b666dc2e90 100644
--- a/gcc/testsuite/g++.dg/warn/Wdangling-reference17.C
+++ b/gcc/testsuite/g++.dg/warn/Wdangling-reference17.C
@@ -1,6 +1,7 @@
 // PR c++/111410
 // { dg-do compile { target c++20 } }
 // { dg-options "-Wdangling-reference" }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 #include <ranges>
diff --git a/gcc/testsuite/g++.dg/warn/Wparentheses-34.C b/gcc/testsuite/g++.dg/warn/Wparentheses-34.C
index 2100c8a193d2..91095695ea2c 100644
--- a/gcc/testsuite/g++.dg/warn/Wparentheses-34.C
+++ b/gcc/testsuite/g++.dg/warn/Wparentheses-34.C
@@ -2,6 +2,7 @@
 // such as std::vector<bool>'s reference type the same as ordinary
 // bool.
 // { dg-additional-options "-Wparentheses" }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/warn/Wsystem-headers1a.C b/gcc/testsuite/g++.dg/warn/Wsystem-headers1a.C
index 68f6ea15f8d6..c44d6a91c20e 100644
--- a/gcc/testsuite/g++.dg/warn/Wsystem-headers1a.C
+++ b/gcc/testsuite/g++.dg/warn/Wsystem-headers1a.C
@@ -1,5 +1,6 @@
 // { dg-do compile { target *-*-*gnu } }
 // { dg-options "-Wsystem-headers" }
+// { dg-skip-if "requires hosted libstdc++ for stdlib atof" { ! hostedlib } }
 
 #include <stdlib.h>
 
diff --git a/gcc/testsuite/g++.dg/warn/Wuninitialized-pr111123-1.C b/gcc/testsuite/g++.dg/warn/Wuninitialized-pr111123-1.C
index 17a6f2b28d88..4d3c44774b57 100644
--- a/gcc/testsuite/g++.dg/warn/Wuninitialized-pr111123-1.C
+++ b/gcc/testsuite/g++.dg/warn/Wuninitialized-pr111123-1.C
@@ -1,6 +1,7 @@
 // { dg-do compile }
 // { dg-require-effective-target c++11 }
 // { dg-options "-O -Wuninitialized" }
+// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
 
 #include <vector>
 
diff --git a/gcc/testsuite/g++.dg/warn/huge-val1.C b/gcc/testsuite/g++.dg/warn/huge-val1.C
index 2ddfae0c9c68..c480cf32f353 100644
--- a/gcc/testsuite/g++.dg/warn/huge-val1.C
+++ b/gcc/testsuite/g++.dg/warn/huge-val1.C
@@ -2,6 +2,7 @@
 // Origin: Joseph Myers <joseph@codesourcery.com>
 // { dg-do link }
 // { dg-options "-pedantic-errors" }
+// { dg-skip-if "requires hosted libstdc++ for cmath" { ! hostedlib } }
 
 #include <math.h>
 
diff --git a/gcc/testsuite/g++.old-deja/g++.abi/arraynew.C b/gcc/testsuite/g++.old-deja/g++.abi/arraynew.C
index 2e11caecff6f..05b6686c0f27 100644
--- a/gcc/testsuite/g++.old-deja/g++.abi/arraynew.C
+++ b/gcc/testsuite/g++.old-deja/g++.abi/arraynew.C
@@ -2,6 +2,7 @@
 // Origin: Mark Mitchell <mark@codesourcery.com>
 // Avoid use of none-overridable new/delete operators in shared
 // { dg-options "-static" { target *-*-mingw* } }
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib size_t" { ! hostedlib } } */
 
 #if defined (__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100
 
diff --git a/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C b/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C
index de647c4eb69d..2d1a08ed9a09 100644
--- a/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C
+++ b/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C
@@ -7,6 +7,8 @@
 // { dg-options "-flat_namespace" { target *-*-darwin[67]* } }
 // Avoid use of non-overridable new/delete operators in shared
 // { dg-options "-static" { target *-*-mingw* } }
+// { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
+
 // Test __cxa_vec routines
 // Copyright (C) 2000, 2005 Free Software Foundation, Inc.
 // Contributed by Nathan Sidwell 7 Apr 2000 <nathan@nathan@codesourcery.com>
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/new3.C b/gcc/testsuite/g++.old-deja/g++.brendan/new3.C
index cc716d5c38fc..3ae4439eff11 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/new3.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/new3.C
@@ -7,6 +7,8 @@
 // { dg-options "-flat_namespace" { target *-*-darwin[67]* } }
 // Avoid use of none-overridable new/delete operators in shared
 // { dg-options "-static" { target *-*-mingw* } }
+// { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
+
 // GROUPS passed operator-new
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/gcc/testsuite/g++.old-deja/g++.eh/new1.C b/gcc/testsuite/g++.old-deja/g++.eh/new1.C
index 929188f6dcab..5020a6bb58c7 100644
--- a/gcc/testsuite/g++.old-deja/g++.eh/new1.C
+++ b/gcc/testsuite/g++.old-deja/g++.eh/new1.C
@@ -2,6 +2,7 @@
 // Test that a throw in foo destroys the A, but does not free the memory.
 // Avoid use of none-overridable new/delete operators in shared
 // { dg-options "-static" { target *-*-mingw* } }
+// { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
 
 #include <cstddef>
 #include <cstdlib>
diff --git a/gcc/testsuite/g++.old-deja/g++.eh/new2.C b/gcc/testsuite/g++.old-deja/g++.eh/new2.C
index 563a7949e44f..42382f3a8c0b 100644
--- a/gcc/testsuite/g++.old-deja/g++.eh/new2.C
+++ b/gcc/testsuite/g++.old-deja/g++.eh/new2.C
@@ -3,6 +3,7 @@
 // Avoid use of none-overridable new/delete operators in shared
 // { dg-options "-static" { target *-*-mingw* } }
 // { dg-xfail-run-if "AIX operator new" { powerpc-ibm-aix* } }
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <cstddef>
 #include <cstdlib>
diff --git a/gcc/testsuite/g++.old-deja/g++.jason/2371.C b/gcc/testsuite/g++.old-deja/g++.jason/2371.C
index c4263d6a4fb5..052fd4e1c206 100644
--- a/gcc/testsuite/g++.old-deja/g++.jason/2371.C
+++ b/gcc/testsuite/g++.old-deja/g++.jason/2371.C
@@ -1,5 +1,6 @@
 // { dg-do run  }
 // { dg-options "" }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
 # 1 "SetLS.cc"
 // GROUPS passed templates nested-classes
 //
diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template44.C b/gcc/testsuite/g++.old-deja/g++.jason/template44.C
index 2aea33a5e055..72da26eb39e4 100644
--- a/gcc/testsuite/g++.old-deja/g++.jason/template44.C
+++ b/gcc/testsuite/g++.old-deja/g++.jason/template44.C
@@ -1,4 +1,6 @@
 // { dg-do run  }
+// { dg-skip-if "requires hosted libstdc++ for stdlib qsort" { ! hostedlib } }
+
 #include <stdlib.h>
 #include <string.h>
 
diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm13.C b/gcc/testsuite/g++.old-deja/g++.law/arm13.C
index f1393c6e39bc..66952dde3b7c 100644
--- a/gcc/testsuite/g++.old-deja/g++.law/arm13.C
+++ b/gcc/testsuite/g++.old-deja/g++.law/arm13.C
@@ -1,4 +1,6 @@
 // { dg-do run  }
+// { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
+
 // GROUPS passed ARM-compliance
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/gcc/testsuite/g++.old-deja/g++.law/scope2.C b/gcc/testsuite/g++.old-deja/g++.law/scope2.C
index 13c02c2ae0ff..af1892e1abc5 100644
--- a/gcc/testsuite/g++.old-deja/g++.law/scope2.C
+++ b/gcc/testsuite/g++.old-deja/g++.law/scope2.C
@@ -1,4 +1,6 @@
 // { dg-do run  }
+// { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } }
+
 // GROUPS passed scoping
 // scoping file
 // From: svkakkad@cs.utexas.edu (Sheetal V. Kakkad)
diff --git a/gcc/testsuite/g++.old-deja/g++.law/weak.C b/gcc/testsuite/g++.old-deja/g++.law/weak.C
index 52444e77946d..c751af6ae2b4 100644
--- a/gcc/testsuite/g++.old-deja/g++.law/weak.C
+++ b/gcc/testsuite/g++.old-deja/g++.law/weak.C
@@ -1,6 +1,8 @@
 // { dg-do link { target i?86-*-linux* i?86-*-gnu* x86_64-*-linux* } }
 // { dg-require-effective-target static }
 // { dg-options "-static" }
+// { dg-skip-if "requires hosted libstdc++ for iostream" { ! hostedlib } }
+
 // Bug: g++ fails to instantiate operator<<.
 
 // libc-5.4.xx has __IO_putc in its static C library, which can conflict
diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh47.C b/gcc/testsuite/g++.old-deja/g++.mike/eh47.C
index 36d3b9db3298..0b99a9f34e2d 100644
--- a/gcc/testsuite/g++.old-deja/g++.mike/eh47.C
+++ b/gcc/testsuite/g++.old-deja/g++.mike/eh47.C
@@ -1,5 +1,6 @@
 // { dg-do run { xfail sparc64-*-elf arm-*-pe } }
 // { dg-options "-fexceptions" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib exit" { ! hostedlib } }
 
 #include <cstdlib>
 #include <exception>
diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns15.C b/gcc/testsuite/g++.old-deja/g++.mike/ns15.C
index b4cf044a80b4..5b3607fb03dd 100644
--- a/gcc/testsuite/g++.old-deja/g++.mike/ns15.C
+++ b/gcc/testsuite/g++.old-deja/g++.mike/ns15.C
@@ -1,6 +1,7 @@
 // { dg-do assemble }
 // { dg-xfail-if "" { xstormy16-*-* } }
 // { dg-require-effective-target size20plus }
+// { dg-skip-if "requires hosted libstdc++ for stdlib qsort" { ! hostedlib } }
 
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p710.C b/gcc/testsuite/g++.old-deja/g++.mike/p710.C
index 7fdd5b022381..3756a5e76e1d 100644
--- a/gcc/testsuite/g++.old-deja/g++.mike/p710.C
+++ b/gcc/testsuite/g++.old-deja/g++.mike/p710.C
@@ -1,4 +1,6 @@
 // { dg-do assemble  }
+// { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } }
+
 // GROUPS passed delete
 /*
   Bug Id: 
diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p9706.C b/gcc/testsuite/g++.old-deja/g++.mike/p9706.C
index 0ed15e4c85c1..7a4c05f44ddb 100644
--- a/gcc/testsuite/g++.old-deja/g++.mike/p9706.C
+++ b/gcc/testsuite/g++.old-deja/g++.mike/p9706.C
@@ -1,5 +1,6 @@
 // { dg-do run { xfail sparc64-*-elf arm-*-pe } }
 // { dg-options "-fexceptions" }
+// { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } }
 // prms-id: 9706
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/new1.C b/gcc/testsuite/g++.old-deja/g++.oliva/new1.C
index 86d25f8e6f35..3b6af27cb8bf 100644
--- a/gcc/testsuite/g++.old-deja/g++.oliva/new1.C
+++ b/gcc/testsuite/g++.old-deja/g++.oliva/new1.C
@@ -1,4 +1,6 @@
 // { dg-do run  }
+// { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } }
+
 // Copyright (C) 1999 Free Software Foundation
 
 // by Alexandre Oliva <oliva@dcc.unicamp.br>
diff --git a/gcc/testsuite/g++.old-deja/g++.other/delete8.C b/gcc/testsuite/g++.old-deja/g++.other/delete8.C
index ea44445b0b6c..b3b374da5ba5 100644
--- a/gcc/testsuite/g++.old-deja/g++.other/delete8.C
+++ b/gcc/testsuite/g++.old-deja/g++.other/delete8.C
@@ -1,4 +1,6 @@
 // { dg-do run  }
+// { dg-skip-if "requires hosted libstdc++ for stdlib size_t" { ! hostedlib } }
+
 // Origin: Mark Mitchell <mark@codesourcery.com>
 
 #include <stdlib.h>
diff --git a/gcc/testsuite/g++.target/i386/avx-pr54700-1.C b/gcc/testsuite/g++.target/i386/avx-pr54700-1.C
index ef696886ce67..9037650aa433 100644
--- a/gcc/testsuite/g++.target/i386/avx-pr54700-1.C
+++ b/gcc/testsuite/g++.target/i386/avx-pr54700-1.C
@@ -5,5 +5,6 @@
 /* { dg-final { scan-assembler-times "vpblendvb" 2 } } */
 /* { dg-final { scan-assembler-times "vblendvps" 4 } } */
 /* { dg-final { scan-assembler-times "vblendvpd" 4 } } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include "sse4_1-pr54700-1.C"
diff --git a/gcc/testsuite/g++.target/i386/avx-pr54700-2.C b/gcc/testsuite/g++.target/i386/avx-pr54700-2.C
index e3556f312179..251b95084b45 100644
--- a/gcc/testsuite/g++.target/i386/avx-pr54700-2.C
+++ b/gcc/testsuite/g++.target/i386/avx-pr54700-2.C
@@ -1,6 +1,7 @@
 /* PR target/54700 */
 /* { dg-do run { target avx } } */
 /* { dg-options "-O2 -std=c++14 -mavx -mno-xop -mno-avx2" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #define CHECK_H "avx-check.h"
 #define TEST avx_test
diff --git a/gcc/testsuite/g++.target/i386/avx2-pr54700-1.C b/gcc/testsuite/g++.target/i386/avx2-pr54700-1.C
index b685c2aa28bb..99050c635d54 100644
--- a/gcc/testsuite/g++.target/i386/avx2-pr54700-1.C
+++ b/gcc/testsuite/g++.target/i386/avx2-pr54700-1.C
@@ -5,6 +5,7 @@
 /* { dg-final { scan-assembler-times "vpblendvb" 2 } } */
 /* { dg-final { scan-assembler-times "vblendvps" 4 } } */
 /* { dg-final { scan-assembler-times "vblendvpd" 4 } } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <x86intrin.h>
 
diff --git a/gcc/testsuite/g++.target/i386/avx2-pr54700-2.C b/gcc/testsuite/g++.target/i386/avx2-pr54700-2.C
index e7a85c34b175..0845d4af5eb5 100644
--- a/gcc/testsuite/g++.target/i386/avx2-pr54700-2.C
+++ b/gcc/testsuite/g++.target/i386/avx2-pr54700-2.C
@@ -1,6 +1,7 @@
 /* PR target/54700 */
 /* { dg-do run { target avx2 } } */
 /* { dg-options "-O2 -std=c++14 -mavx2 -mno-xop -mno-avx512f" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #ifndef CHECK_H
 #define CHECK_H "avx2-check.h"
diff --git a/gcc/testsuite/g++.target/i386/avx512bw-pr96246-2.C b/gcc/testsuite/g++.target/i386/avx512bw-pr96246-2.C
index 30a1b9595730..126d4d247163 100644
--- a/gcc/testsuite/g++.target/i386/avx512bw-pr96246-2.C
+++ b/gcc/testsuite/g++.target/i386/avx512bw-pr96246-2.C
@@ -2,6 +2,7 @@
 /* { dg-do run } */
 /* { dg-require-effective-target avx512bw } */
 /* { dg-options "-O2 -std=c++14 -mavx512bw" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #define AVX512BW
 
diff --git a/gcc/testsuite/g++.target/i386/avx512vl-pr54700-1a.C b/gcc/testsuite/g++.target/i386/avx512vl-pr54700-1a.C
index fedc3aad0190..e03d86482fb0 100644
--- a/gcc/testsuite/g++.target/i386/avx512vl-pr54700-1a.C
+++ b/gcc/testsuite/g++.target/i386/avx512vl-pr54700-1a.C
@@ -5,5 +5,6 @@
 /* { dg-final { scan-assembler-times "vpblendvb" 2 } } */
 /* { dg-final { scan-assembler-times "vblendvps" 4 } } */
 /* { dg-final { scan-assembler-times "vblendvpd" 4 } } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include "avx2-pr54700-1.C"
diff --git a/gcc/testsuite/g++.target/i386/avx512vl-pr54700-1b.C b/gcc/testsuite/g++.target/i386/avx512vl-pr54700-1b.C
index 03f934356505..1259f28d55d8 100644
--- a/gcc/testsuite/g++.target/i386/avx512vl-pr54700-1b.C
+++ b/gcc/testsuite/g++.target/i386/avx512vl-pr54700-1b.C
@@ -5,5 +5,6 @@
 /* { dg-final { scan-assembler-times "pblendvb" 2 } } */
 /* { dg-final { scan-assembler-times "blendvps" 4 } } */
 /* { dg-final { scan-assembler-times "blendvpd" 4 } } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include "sse4_1-pr54700-1.C"
diff --git a/gcc/testsuite/g++.target/i386/avx512vl-pr54700-2a.C b/gcc/testsuite/g++.target/i386/avx512vl-pr54700-2a.C
index 687a8c4fd8f0..b58d5f53c315 100644
--- a/gcc/testsuite/g++.target/i386/avx512vl-pr54700-2a.C
+++ b/gcc/testsuite/g++.target/i386/avx512vl-pr54700-2a.C
@@ -1,6 +1,7 @@
 /* PR target/100648  */
 /* { dg-do run { target avx2 } } */
 /* { dg-options "-O2 -std=c++14 -mavx2 -mavx512vl -mavx512bw" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #ifndef CHECK_H
 #define CHECK_H "avx512f-helper.h"
diff --git a/gcc/testsuite/g++.target/i386/avx512vl-pr54700-2b.C b/gcc/testsuite/g++.target/i386/avx512vl-pr54700-2b.C
index 40450a90c52b..f184d25fa146 100644
--- a/gcc/testsuite/g++.target/i386/avx512vl-pr54700-2b.C
+++ b/gcc/testsuite/g++.target/i386/avx512vl-pr54700-2b.C
@@ -1,6 +1,7 @@
 /* PR target/pr100648 */
 /* { dg-do run { target sse4 } } */
 /* { dg-options "-O2 -std=c++14 -msse4 -mavx512vl -mavx512bw -mno-xop" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #ifndef CHECK_H
 #define CHECK_H "avx512f-helper.h"
diff --git a/gcc/testsuite/g++.target/i386/avx512vl-pr96246-2.C b/gcc/testsuite/g++.target/i386/avx512vl-pr96246-2.C
index db9dce2caefb..5ac756d96f6a 100644
--- a/gcc/testsuite/g++.target/i386/avx512vl-pr96246-2.C
+++ b/gcc/testsuite/g++.target/i386/avx512vl-pr96246-2.C
@@ -3,6 +3,7 @@
 /* { dg-require-effective-target avx512bw } */
 /* { dg-require-effective-target avx512vl } */
 /* { dg-options "-O2 -std=c++14 -mavx512bw -mavx512vl" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #define AVX512VL
 #define AVX512BW
diff --git a/gcc/testsuite/g++.target/i386/mvc4.C b/gcc/testsuite/g++.target/i386/mvc4.C
index 68df5e3e4d0c..fd8c3e381c9a 100644
--- a/gcc/testsuite/g++.target/i386/mvc4.C
+++ b/gcc/testsuite/g++.target/i386/mvc4.C
@@ -1,6 +1,7 @@
 /* { dg-do compile } */
 /* { dg-require-ifunc "" } */
 /* { dg-options "-mavx" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <immintrin.h>
 
diff --git a/gcc/testsuite/g++.target/i386/pr100885.C b/gcc/testsuite/g++.target/i386/pr100885.C
index bec08f7e96d0..c09f743ee1fd 100644
--- a/gcc/testsuite/g++.target/i386/pr100885.C
+++ b/gcc/testsuite/g++.target/i386/pr100885.C
@@ -1,5 +1,6 @@
 /* { dg-do compile { target { ! ia32 } } } */
 /* { dg-options "-mavx512vl -mno-avx512bw -O2 -Wno-int-to-pointer-cast -std=c++14" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include<x86intrin.h>
 typedef unsigned char byte;
diff --git a/gcc/testsuite/g++.target/i386/pr103750-fwprop-1.C b/gcc/testsuite/g++.target/i386/pr103750-fwprop-1.C
index 26987d307aa6..922e33e2c636 100644
--- a/gcc/testsuite/g++.target/i386/pr103750-fwprop-1.C
+++ b/gcc/testsuite/g++.target/i386/pr103750-fwprop-1.C
@@ -2,6 +2,7 @@
 /* { dg-do compile } */
 /* { dg-options "-O2 -std=c++1y -march=cannonlake -fdump-rtl-fwprop1" } */
 /* { dg-final { scan-rtl-dump-not "subreg:HI\[ \\\(\]*reg:SI\[^\n]*\n\[^\n]*UNSPEC_TZCNT" "fwprop1" } } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include<immintrin.h>
 const char16_t *qustrchr(char16_t *n, char16_t *e, char16_t c) noexcept
diff --git a/gcc/testsuite/g++.target/i386/pr105593.C b/gcc/testsuite/g++.target/i386/pr105593.C
index 3897f706bb11..aef1adbcf46d 100644
--- a/gcc/testsuite/g++.target/i386/pr105593.C
+++ b/gcc/testsuite/g++.target/i386/pr105593.C
@@ -1,6 +1,7 @@
 // PR c++/105593
 // { dg-do compile { target c++14 } }
 // { dg-options "-mavx512fp16 -W -Wall -O2" }
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <x86intrin.h>
 
diff --git a/gcc/testsuite/g++.target/i386/pr105638.C b/gcc/testsuite/g++.target/i386/pr105638.C
index c8770933b7c1..b91301ba47ce 100644
--- a/gcc/testsuite/g++.target/i386/pr105638.C
+++ b/gcc/testsuite/g++.target/i386/pr105638.C
@@ -1,6 +1,7 @@
 /* { dg-do compile { target { ! ia32 } } } */
 /* { dg-options "-std=gnu++20 -O2 -march=skylake" } */
 /* { dg-final { scan-assembler-not "call\[\\t \]_?memset\[\r\n\]\[^\r\n\]movq\[\\t \]%\[a-z0-9]*, %\[a-z0-9]*\[\r\n\]\[^\r\n\]vpxor\[\\t \]%xmm0, %xmm0, %xmm0\[\r\n\]\[^\r\n\]vmovdqu\[\\t \]%xmm0, 36\\(%rax\\)" } } */
+/* { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } } */
 
 
 #include <stdint.h>
diff --git a/gcc/testsuite/g++.target/i386/pr110170.C b/gcc/testsuite/g++.target/i386/pr110170.C
index 21cca8f38052..d2d8811b13d7 100644
--- a/gcc/testsuite/g++.target/i386/pr110170.C
+++ b/gcc/testsuite/g++.target/i386/pr110170.C
@@ -1,5 +1,7 @@
 /* { dg-do run { target sse4 } } */
 /* { dg-options " -O2 -msse4.1 -mfpmath=sse -std=gnu++20" } */
+/* { dg-skip-if "requires hosted libstdc++ for cmath" { ! hostedlib } } */
+
 #include <math.h>
 
 #ifndef CHECK_H
diff --git a/gcc/testsuite/g++.target/i386/pr112443.C b/gcc/testsuite/g++.target/i386/pr112443.C
index ebfa9b4a753b..7a47ceaf632e 100644
--- a/gcc/testsuite/g++.target/i386/pr112443.C
+++ b/gcc/testsuite/g++.target/i386/pr112443.C
@@ -2,6 +2,7 @@
 /* { dg-require-effective-target avx512bw } */
 /* { dg-require-effective-target avx512vl } */
 /* { dg-options "-O2 -std=c++17 -mavx512bw -mavx512vl" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <cstdint>
 #include <x86intrin.h>
diff --git a/gcc/testsuite/g++.target/i386/pr113560.C b/gcc/testsuite/g++.target/i386/pr113560.C
index 179b68f9833f..c4a1ccf41c43 100644
--- a/gcc/testsuite/g++.target/i386/pr113560.C
+++ b/gcc/testsuite/g++.target/i386/pr113560.C
@@ -1,5 +1,6 @@
 /* { dg-do compile { target { ! ia32 } } } */
 /* { dg-options "-Ofast -std=c++23 -march=znver4" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <immintrin.h>
 auto f(char *buf, unsigned long long in) noexcept
diff --git a/gcc/testsuite/g++.target/i386/pr80566-1.C b/gcc/testsuite/g++.target/i386/pr80566-1.C
index 29da31d6bb62..2a8031c46bd6 100644
--- a/gcc/testsuite/g++.target/i386/pr80566-1.C
+++ b/gcc/testsuite/g++.target/i386/pr80566-1.C
@@ -1,5 +1,6 @@
 // { dg-do compile }
 // { dg-options "-O2 -march=haswell -mtune-ctrl=avx256_store_by_pieces" }
+// { dg-skip-if "requires hosted libstdc++ for cstring" { ! hostedlib } }
 
 #include <cstring>
 
diff --git a/gcc/testsuite/g++.target/i386/pr80566-2.C b/gcc/testsuite/g++.target/i386/pr80566-2.C
index 9ffd2c8cadb8..9f09c9d8de8f 100644
--- a/gcc/testsuite/g++.target/i386/pr80566-2.C
+++ b/gcc/testsuite/g++.target/i386/pr80566-2.C
@@ -1,5 +1,6 @@
 // { dg-do compile }
 // { dg-options "-O2 -march=haswell -mtune-ctrl=avx256_move_by_pieces" }
+// { dg-skip-if "requires hosted libstdc++ for cstring" { ! hostedlib } }
 
 #include <cstring>
 
diff --git a/gcc/testsuite/g++.target/i386/pr88152.C b/gcc/testsuite/g++.target/i386/pr88152.C
index 9f1659b75868..a0aed94e7acf 100644
--- a/gcc/testsuite/g++.target/i386/pr88152.C
+++ b/gcc/testsuite/g++.target/i386/pr88152.C
@@ -8,6 +8,7 @@
 // { dg-final { scan-assembler-times "vmovmskpd\[^\n\r]*xmm" 4 } }
 // { dg-final { scan-assembler-times "vmovmskpd\[^\n\r]*ymm" 4 } }
 // { dg-final { scan-assembler-not "vpcmpgt|vpcmpeq|vpsra" } }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 #include <x86intrin.h>
 
diff --git a/gcc/testsuite/g++.target/i386/pr88998.C b/gcc/testsuite/g++.target/i386/pr88998.C
index a338ad7964c1..a54132831426 100644
--- a/gcc/testsuite/g++.target/i386/pr88998.C
+++ b/gcc/testsuite/g++.target/i386/pr88998.C
@@ -2,6 +2,7 @@
 // { dg-do run { target sse2_runtime } }
 // { dg-options "-O2 -msse2 -mfpmath=387" }
 // { dg-require-effective-target c++11 }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 #include <cassert>
 #include <unordered_map>
diff --git a/gcc/testsuite/g++.target/i386/pr94046-1.C b/gcc/testsuite/g++.target/i386/pr94046-1.C
index f2d472442d76..708c9f8f3f0e 100644
--- a/gcc/testsuite/g++.target/i386/pr94046-1.C
+++ b/gcc/testsuite/g++.target/i386/pr94046-1.C
@@ -1,6 +1,7 @@
 // PR target/94046
 // { dg-do compile }
 // { dg-options "-O2 -mavx2 -mxop" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 #include <x86intrin.h>
 
diff --git a/gcc/testsuite/g++.target/i386/pr94046-2.C b/gcc/testsuite/g++.target/i386/pr94046-2.C
index abc8c3ee1ec4..ba6678669d71 100644
--- a/gcc/testsuite/g++.target/i386/pr94046-2.C
+++ b/gcc/testsuite/g++.target/i386/pr94046-2.C
@@ -1,5 +1,6 @@
 // PR target/94046
 // { dg-do compile }
 // { dg-options "-O0 -mavx2 -mxop" }
+// { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } }
 
 #include "pr94046-1.C"
diff --git a/gcc/testsuite/g++.target/i386/sse4_1-pr54700-1.C b/gcc/testsuite/g++.target/i386/sse4_1-pr54700-1.C
index 2b5cdb14b13a..020da6964a44 100644
--- a/gcc/testsuite/g++.target/i386/sse4_1-pr54700-1.C
+++ b/gcc/testsuite/g++.target/i386/sse4_1-pr54700-1.C
@@ -5,6 +5,7 @@
 /* { dg-final { scan-assembler-times "pblendvb" 2 } } */
 /* { dg-final { scan-assembler-times "blendvps" 4 } } */
 /* { dg-final { scan-assembler-times "blendvpd" 4 } } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #include <x86intrin.h>
 
diff --git a/gcc/testsuite/g++.target/i386/sse4_1-pr54700-2.C b/gcc/testsuite/g++.target/i386/sse4_1-pr54700-2.C
index cef7d9764f8d..09e768fb2c92 100644
--- a/gcc/testsuite/g++.target/i386/sse4_1-pr54700-2.C
+++ b/gcc/testsuite/g++.target/i386/sse4_1-pr54700-2.C
@@ -1,6 +1,7 @@
 /* PR target/54700 */
 /* { dg-do run { target sse4 } } */
 /* { dg-options "-O2 -std=c++14 -msse4 -mno-avx -mno-xop" } */
+/* { dg-skip-if "requires hosted libstdc++ for cstdlib malloc" { ! hostedlib } } */
 
 #ifndef CHECK_H
 #define CHECK_H "sse4_1-check.h"


More information about the Gcc-cvs mailing list