diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2016-12-06 14:36:07 +0000 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2016-12-06 14:36:07 +0000 |
commit | 449a432129c14002befb52eeabc0d9d6d4879a2f (patch) | |
tree | 944b59df8c7589fb821b0635585699497a229203 | |
parent | 55037a694f63196eb28dc7eb0cab0857fe7ab85c (diff) | |
download | gcc-449a432129c14002befb52eeabc0d9d6d4879a2f.zip gcc-449a432129c14002befb52eeabc0d9d6d4879a2f.tar.gz gcc-449a432129c14002befb52eeabc0d9d6d4879a2f.tar.bz2 |
Fix pretty-printer for std::variant
* python/libstdcxx/v6/printers.py (StdVariantPrinter): Update for new
data member name.
* testsuite/libstdc++-prettyprinters/cxx17.cc: Remove redundant test.
From-SVN: r243304
-rw-r--r-- | libstdc++-v3/ChangeLog | 4 | ||||
-rw-r--r-- | libstdc++-v3/python/libstdcxx/v6/printers.py | 2 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx17.cc | 2 |
3 files changed, 5 insertions, 3 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 676d32b..5662809 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,9 @@ 2016-12-06 Jonathan Wakely <jwakely@redhat.com> + * python/libstdcxx/v6/printers.py (StdVariantPrinter): Update for new + data member name. + * testsuite/libstdc++-prettyprinters/cxx17.cc: Remove redundant test. + * include/bits/shared_ptr_base.h (__shared_ptr_access<T, L, false, true>::operator->()): Fix assertion. diff --git a/libstdc++-v3/python/libstdcxx/v6/printers.py b/libstdc++-v3/python/libstdcxx/v6/printers.py index bad42b4..ff428e8 100644 --- a/libstdc++-v3/python/libstdcxx/v6/printers.py +++ b/libstdc++-v3/python/libstdcxx/v6/printers.py @@ -1002,7 +1002,7 @@ class StdVariantPrinter(SingleObjContainerPrinter): visualizer = None else: self.contained_type = alternatives[int(self.index)] - addr = val['_M_union']['_M_first']['_M_storage'].address + addr = val['_M_u']['_M_first']['_M_storage'].address contained_value = addr.cast(self.contained_type.pointer()).dereference() visualizer = gdb.default_visualizer(contained_value) super (StdVariantPrinter, self).__init__(contained_value, visualizer, 'array') diff --git a/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx17.cc b/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx17.cc index 96be8c7..69c16c1 100644 --- a/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx17.cc +++ b/libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx17.cc @@ -86,8 +86,6 @@ main() // { dg-final { note-test v3 {std::variant<float, int, std::string_view> [index 1] = {3}} } } variant<float, int, string_view> v4{ str }; // { dg-final { note-test v4 {std::variant<float, int, std::string_view> [index 2] = {"string"}} } } - variant<string_view> vref{str}; -// { dg-final { note-test vref {std::variant<std::string_view> [index 0] = {"string"}} } } map<int, string_view> m{ {1, "one"} }; map<int, string_view>::node_type n0; |