mangle.c (write_number): Take an unsigned HOST_WIDE_INT as an argument.
authorChip Salzenberg <chip@valinux.com>
Sun, 11 Jun 2000 03:57:18 +0000 (03:57 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Sun, 11 Jun 2000 03:57:18 +0000 (03:57 +0000)
commit82a362d0a47042ab86a7bcd966ec9820f4f3bb8a
treedd4ccd8ee512024435a3845bac0422d5c159e3a4
parent4d870388ff715ef89999c0c5ed1dd14f011c4b9e
mangle.c (write_number): Take an unsigned HOST_WIDE_INT as an argument.

* mangle.c (write_number): Take an unsigned HOST_WIDE_INT as an
argument.
(write_signed_number): New macro.
(write_unsigned_number): Likewise.
(write_source_name): Use them.
(write_number): Handle signed and unsigned values.
(write_integer_cst): Use tree_int_cst_sgn, and use
write_unsigned_number or write_signed_number as appropriate.
(write_discriminator): Use write_unsigned_number or
write_signed_number as appropriate.
(write_template_arg_literal): Likewise.
(write_array_type): Use tree_low_cst.
(write_template_parm):  Use write_unsigned_number or
write_signed_number as appropriate.
(write_substitution): Adjust call to write_number.
(write_type): Get the TYPE_MAIN_VARIANT before mangling it.
(write_expression): Handle non-type template arguments of
reference type correctly.
(mangle_thunk): Use write_signed_number.

* mangle.c (find_substition): Don't mangle objects with typename
substitutions (e.g. "cin" as "Si").

Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
From-SVN: r34488
gcc/cp/ChangeLog
gcc/cp/mangle.c
gcc/testsuite/g++.old-deja/g++.other/crash19.C [new file with mode: 0644]