Commit f1a0345c by Jakub Jelinek Committed by Jakub Jelinek

mangle.c (write_discriminator): Use `_0' for discriminator 1, not `_'.

	* mangle.c (write_discriminator): Use `_0' for discriminator 1,
	not `_'.

	* cp-demangle.c (demangle_discriminator): `_0' is discriminator #1,
	`_' not followed by a digit is invalid.

From-SVN: r40795
parent 60080880
2001-03-23 Jakub Jelinek <jakub@redhat.com>
* mangle.c (write_discriminator): Use `_0' for discriminator 1,
not `_'.
2001-03-23 Jakub Jelinek <jakub@redhat.com>
* decl.c (local_names): Define.
(push_local_name): New.
(grok_reference_init): Return init if initializing static reference
......
......@@ -1196,10 +1196,7 @@ write_discriminator (discriminator)
if (discriminator > 0)
{
write_char ('_');
/* The number is omitted for discriminator == 1. Beyond 1, the
numbering starts at 0. */
if (discriminator > 1)
write_unsigned_number (discriminator - 2);
write_unsigned_number (discriminator - 1);
}
}
......
2001-03-23 Jakub Jelinek <jakub@redhat.com>
* cp-demangle.c (demangle_discriminator): `_0' is discriminator #1,
`_' not followed by a digit is invalid.
2001-03-22 Jim Blandy <jimb@redhat.com>
* cp-demangle.c (string_list_delete): Use dyn_string_delete
......
......@@ -3446,15 +3446,11 @@ demangle_discriminator (dm, suppress_first)
/* Write the discriminator. The mangled number is two
less than the discriminator ordinal, counting from
zero. */
RETURN_IF_ERROR (int_to_dyn_string (discriminator + 2,
RETURN_IF_ERROR (int_to_dyn_string (discriminator + 1,
(dyn_string_t) dm->result));
}
else
{
if (flag_verbose)
/* A missing digit correspond to one. */
RETURN_IF_ERROR (result_add_char (dm, '1'));
}
return STATUS_ERROR;
if (flag_verbose)
RETURN_IF_ERROR (result_add_char (dm, ']'));
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment