diff options
author | H.J. Lu <hjl@gcc.gnu.org> | 2010-01-09 16:24:52 -0800 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2010-01-09 16:24:52 -0800 |
commit | 9b2adcdbc12edf30eb4bedcff79f8f9050c7f29a (patch) | |
tree | 2b6609917b3fbd2025fcdb94fb3fac7f8b42e73b | |
parent | be24b7fbd0049a13ab667c55598d7ad71c334f83 (diff) | |
download | gcc-9b2adcdbc12edf30eb4bedcff79f8f9050c7f29a.zip gcc-9b2adcdbc12edf30eb4bedcff79f8f9050c7f29a.tar.gz gcc-9b2adcdbc12edf30eb4bedcff79f8f9050c7f29a.tar.bz2 |
Return dgs.alc on success
libiberty/
2010-01-09 Ian Lance Taylor <iant@google.com>
PR other/42230
* cp-demangle.c (d_demangle): Return dgs.alc on success.
libstdc++-v3/
2010-01-09 H.J. Lu <hongjiu.lu@intel.com>
PR other/42230
* testsuite/abi/pr42230.cc: New.
From-SVN: r155785
-rw-r--r-- | libiberty/ChangeLog | 5 | ||||
-rw-r--r-- | libiberty/cp-demangle.c | 2 | ||||
-rw-r--r-- | libstdc++-v3/ChangeLog | 9 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/abi/pr42230.cc | 16 |
4 files changed, 29 insertions, 3 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index c3d8f19..effb327 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,8 @@ +2010-01-09 Ian Lance Taylor <iant@google.com> + + PR other/42230 + * cp-demangle.c (d_demangle): Return dgs.alc on success. + 2010-01-04 Nobuhiro Iwamatsu <iwamatsu@nigauri.org> PR target/42316 diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c index 43cf34a..d37c90e 100644 --- a/libiberty/cp-demangle.c +++ b/libiberty/cp-demangle.c @@ -4777,7 +4777,7 @@ d_demangle (const char *mangled, int options, size_t *palc) return NULL; } - *palc = dgs.allocation_failure ? 1 : 0; + *palc = dgs.allocation_failure ? 1 : dgs.alc; return dgs.buf; } diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index a8276a3..e0fe569 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,10 +1,15 @@ +2010-01-09 H.J. Lu <hongjiu.lu@intel.com> + + PR other/42230 + * testsuite/abi/pr42230.cc: New. + 2010-01-09 Paolo Carlini <paolo.carlini@oracle.com> * include/debug/set.h: Revert last change, per DR 1204 [Ready]; mention the latter in comment. * include/debug/unordered_map: Likewise. - * include/debug/multiset.h: Likewise. - * include/debug/vector: Likewise. + * include/debug/multiset.h: Likewise. + * include/debug/vector: Likewise. * include/debug/unordered_set: Likewise. * include/debug/deque: Likewise. * include/debug/map.h: Likewise. diff --git a/libstdc++-v3/testsuite/abi/pr42230.cc b/libstdc++-v3/testsuite/abi/pr42230.cc new file mode 100644 index 0000000..2a33899 --- /dev/null +++ b/libstdc++-v3/testsuite/abi/pr42230.cc @@ -0,0 +1,16 @@ +// { dg-do run } + +#include <cxxabi.h> +#include <cassert> +#include <cstddef> + +int main() +{ + std::size_t length = 0; + int cc; + + char* ret = abi::__cxa_demangle("e", 0, &length, &cc); + + assert( (cc < 0 && !ret) || (ret && length) ); + return 0; +} |