This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [COMMITTED] Fix: new FAILs on HEAD
- From: Andrew Pinski <pinskia at physics dot uc dot edu>
- To: Andrew Pinski <pinskia at physics dot uc dot edu>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Thu, 7 Oct 2004 22:49:00 -0400
- Subject: Re: [COMMITTED] Fix: new FAILs on HEAD
- References: <AF67E35C-1867-11D9-B1A5-000A95D692F4@physics.uc.edu>
On Oct 7, 2004, at 9:40 AM, Michael Ritzert wrote:
These new FAILs appeared since the last run:
FAIL: g++.dg/ext/asm2.C (test for excess errors)
FAIL: g++.dg/ext/asm6.C (test for excess errors)
These two are mine. The second one is just a typo in the testcase.
The first one is that we are not looking passed the CLEANUP_POINT_EXPR
in the parser.
I forgot that I needed to change template substitution code where we
generate a new ASM_EXPR.
I committed this as obvious.
Thanks,
Andrew Pinski
ChangeLog:
* pt.c (tsubst_expr) <case ASM_EXPR>: Look passed the
CLEANUP_POINT_EXPR to get the asm expression.
Patch:
Index: pt.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/cp/pt.c,v
retrieving revision 1.930
diff -u -p -r1.930 pt.c
--- pt.c 5 Oct 2004 20:09:09 -0000 1.930
+++ pt.c 8 Oct 2004 02:40:43 -0000
@@ -8017,7 +8017,12 @@ tsubst_expr (tree t, tree args, tsubst_f
tsubst_expr (ASM_OUTPUTS (t), args, complain, in_decl),
tsubst_expr (ASM_INPUTS (t), args, complain, in_decl),
tsubst_expr (ASM_CLOBBERS (t), args, complain, in_decl));
- ASM_INPUT_P (tmp) = ASM_INPUT_P (t);
+ {
+ tree asm_expr = tmp;
+ if (TREE_CODE (asm_expr) == CLEANUP_POINT_EXPR)
+ asm_expr = TREE_OPERAND (asm_expr, 0);
+ ASM_INPUT_P (asm_expr) = ASM_INPUT_P (t);
+ }
break;
case TRY_BLOCK: