[gcc r12-8934] libstdc++: Fix dangling reference in filesystem::path::filename()
Jonathan Wakely
redi@gcc.gnu.org
Thu Nov 24 16:36:21 GMT 2022
https://gcc.gnu.org/g:6e3b2c0d5e676e1cba1c27b95dd850e5cc33f9e1
commit r12-8934-g6e3b2c0d5e676e1cba1c27b95dd850e5cc33f9e1
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Fri Oct 28 15:28:09 2022 +0100
libstdc++: Fix dangling reference in filesystem::path::filename()
The new -Wdangling-reference warning noticed this.
libstdc++-v3/ChangeLog:
* include/bits/fs_path.h (path::filename()): Fix dangling
reference.
(cherry picked from commit 49237fe6ef677a81eae701f937546210c90b5914)
Diff:
---
libstdc++-v3/include/bits/fs_path.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libstdc++-v3/include/bits/fs_path.h b/libstdc++-v3/include/bits/fs_path.h
index 1b4a1b69f37..7a3d0513134 100644
--- a/libstdc++-v3/include/bits/fs_path.h
+++ b/libstdc++-v3/include/bits/fs_path.h
@@ -1288,9 +1288,9 @@ namespace __detail
{
if (_M_pathname.back() == preferred_separator)
return {};
- auto& __last = *--end();
- if (__last._M_type() == _Type::_Filename)
- return __last;
+ auto __last = --end();
+ if (__last->_M_type() == _Type::_Filename)
+ return *__last;
}
return {};
}
More information about the Libstdc++-cvs
mailing list