after "DF".
* testsuite/demangle-expected: Add test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156226
138bc75d-0d04-0410-961f-
82ee72b054a4
+2010-01-25 Ian Lance Taylor <iant@google.com>
+
+ * cp-demangle.c (cplus_demangle_type): Check for invalid type
+ after "DF".
+ * testsuite/demangle-expected: Add test.
+
2010-01-20 Jason Merrill <jason@redhat.com>
PR c++/42338
2010-01-20 Jason Merrill <jason@redhat.com>
PR c++/42338
with other than 1 operand.
(d_print_comp): Handle function parameters. Fix bug with
function used in type of function.
with other than 1 operand.
(d_print_comp): Handle function parameters. Fix bug with
function used in type of function.
- * testsuite/demangle-expected: Upate tests.
+ * testsuite/demangle-expected: Update tests.
2009-02-21 Mark Mitchell <mark@codesourcery.com>
2009-02-21 Mark Mitchell <mark@codesourcery.com>
/* Demangler for g++ V3 ABI.
/* Demangler for g++ V3 ABI.
- Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008
+ Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Written by Ian Lance Taylor <ian@wasabisystems.com>.
Free Software Foundation, Inc.
Written by Ian Lance Taylor <ian@wasabisystems.com>.
/* For demangling we don't care about the bits. */
d_number (di);
ret->u.s_fixed.length = cplus_demangle_type (di);
/* For demangling we don't care about the bits. */
d_number (di);
ret->u.s_fixed.length = cplus_demangle_type (di);
+ if (ret->u.s_fixed.length == NULL)
+ return NULL;
d_number (di);
peek = d_next_char (di);
ret->u.s_fixed.sat = (peek == 's');
d_number (di);
peek = d_next_char (di);
ret->u.s_fixed.sat = (peek == 's');
--format=gnat
prot__lock__update_E6s
prot.lock.update
--format=gnat
prot__lock__update_E6s
prot.lock.update
+#
+# Used to crash the demangler.
+--format=gnu-v3
+DFA
+DFA