From 59a3931dd3962006105e85ecd5b9c37b8c5fcd14 Mon Sep 17 00:00:00 2001 From: mmitchel Date: Sun, 6 Jun 1999 11:06:53 +0000 Subject: [PATCH] * method.c (is_back_referenceable_type): Back-reference bools when not squangling. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@27382 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/cp/method.c | 8 +++++++- gcc/testsuite/g++.old-deja/g++.other/mangle1.C | 3 +++ 2 files changed, 10 insertions(+), 1 deletion(-) 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..d5b36a7 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 -- 2.7.4