Commit 9223feaa by Mark Mitchell

method.c (is_back_referenceable_type): Back-reference bools when not squangling.

	* method.c (is_back_referenceable_type): Back-reference bools when
	not squangling.

[[Split portion of a mixed commit.]]

From-SVN: r27382.2
parent 464eda2b
...@@ -372,10 +372,16 @@ is_back_referenceable_type (type) ...@@ -372,10 +372,16 @@ is_back_referenceable_type (type)
switch (TREE_CODE (type)) switch (TREE_CODE (type))
{ {
case BOOLEAN_TYPE:
if (!flag_do_squangling)
/* Even though the mangling of this is just `b', we did
historically generate back-references for it. */
return 1;
/* Fall through. */
case INTEGER_TYPE: case INTEGER_TYPE:
case REAL_TYPE: case REAL_TYPE:
case VOID_TYPE: case VOID_TYPE:
case BOOLEAN_TYPE:
/* These types have single-character manglings, so there's no /* These types have single-character manglings, so there's no
point in generating back-references. */ point in generating back-references. */
return 0; return 0;
......
...@@ -40,3 +40,6 @@ int f__FRC1AiT0N20RiN25 = 0; // ERROR - name clash ...@@ -40,3 +40,6 @@ int f__FRC1AiT0N20RiN25 = 0; // ERROR - name clash
void f(const A2&, int, const A2&, const A2&, const A2&, int, int, void f(const A2&, int, const A2&, const A2&, const A2&, int, int,
int) { } // ERROR - name clash int) { } // ERROR - name clash
int f__FRC1AiT0N20iii = 0; // ERROR - name clash int f__FRC1AiT0N20iii = 0; // ERROR - name clash
void f(bool, bool) {} // ERROR - name clash
int f__FbT0 = 0; // ERROR - name clash
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