aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMark Mitchell <mmitchel@gcc.gnu.org>1999-06-06 11:06:53 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>1999-06-06 11:06:53 +0000
commit9223feaacb82177fcc52d5e181fee2213dc2e2a6 (patch)
treec3aaa16f4e1ac88e3c09c93536c5d8aad132cbb5 /gcc
parent464eda2b3c5b3ead2121927476e06a01129532dc (diff)
downloadgcc-9223feaacb82177fcc52d5e181fee2213dc2e2a6.zip
gcc-9223feaacb82177fcc52d5e181fee2213dc2e2a6.tar.gz
gcc-9223feaacb82177fcc52d5e181fee2213dc2e2a6.tar.bz2
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/method.c8
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/mangle1.C3
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/cp/method.c b/gcc/cp/method.c
index 873ccd4..cf03013 100644
--- a/gcc/cp/method.c
+++ b/gcc/cp/method.c
@@ -372,10 +372,16 @@ is_back_referenceable_type (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 REAL_TYPE:
case VOID_TYPE:
- case BOOLEAN_TYPE:
/* These types have single-character manglings, so there's no
point in generating back-references. */
return 0;
diff --git a/gcc/testsuite/g++.old-deja/g++.other/mangle1.C b/gcc/testsuite/g++.old-deja/g++.other/mangle1.C
index 0ffc5d1..d5b36a7b 100644
--- a/gcc/testsuite/g++.old-deja/g++.other/mangle1.C
+++ b/gcc/testsuite/g++.old-deja/g++.other/mangle1.C
@@ -40,3 +40,6 @@ int f__FRC1AiT0N20RiN25 = 0; // ERROR - name clash
void f(const A2&, int, const A2&, const A2&, const A2&, int, int,
int) { } // ERROR - name clash
int f__FRC1AiT0N20iii = 0; // ERROR - name clash
+
+void f(bool, bool) {} // ERROR - name clash
+int f__FbT0 = 0; // ERROR - name clash