diff options
author | Marek Polacek <polacek@redhat.com> | 2024-01-22 16:12:33 -0500 |
---|---|---|
committer | Marek Polacek <polacek@redhat.com> | 2024-01-22 16:13:03 -0500 |
commit | c596ce03120cc22e141186401c6656009ddebdaa (patch) | |
tree | 60aff0c4b4933d7a14e1394aab2a2a532f8ef779 /gcc | |
parent | bc77c035c45bb224790b1c03d06a64c8a1cc51c5 (diff) | |
download | gcc-c596ce03120cc22e141186401c6656009ddebdaa.zip gcc-c596ce03120cc22e141186401c6656009ddebdaa.tar.gz gcc-c596ce03120cc22e141186401c6656009ddebdaa.tar.bz2 |
c++: extend Wdangling-reference17.C [PR109642]
This patch extends g++.dg/warn/Wdangling-reference17.C with code
from PR109642. I'm not creating a new test because this one
already #includes the required headers.
PR c++/109642
gcc/testsuite/ChangeLog:
* g++.dg/warn/Wdangling-reference17.C: Additional testing.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/g++.dg/warn/Wdangling-reference17.C | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/warn/Wdangling-reference17.C b/gcc/testsuite/g++.dg/warn/Wdangling-reference17.C index 2236984..8cda5de 100644 --- a/gcc/testsuite/g++.dg/warn/Wdangling-reference17.C +++ b/gcc/testsuite/g++.dg/warn/Wdangling-reference17.C @@ -4,6 +4,7 @@ #include <vector> #include <ranges> +#include <span> int main() { @@ -12,4 +13,15 @@ int main() { (void) i; } + + // From c++/109642. + const auto vec = std::vector{ 1, 2, 3 }; + const auto s = std::span<decltype(vec)::value_type const>{vec}; + + for ([[maybe_unused]] auto _ : s | std::views::take(2)) { } + + for ([[maybe_unused]] auto _ : vec | std::views::take(2)) { } + + const auto s_view = s | std::views::take(2); + for ([[maybe_unused]] auto _ : s_view) { } } |