From: Chris Lattner Date: Thu, 15 Aug 2002 19:37:11 +0000 (+0000) Subject: Parse const expr cast instruction the same way the instruction is formed X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=ec1b8a07961bfae1e0d569f57cd8b55d91d01efc;p=oota-llvm.git Parse const expr cast instruction the same way the instruction is formed git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3353 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index 5eed0ebc57e..47685355f60 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -993,9 +993,12 @@ ConstVal : SIntType EINT64VAL { // integral constants }; -ConstExpr: Types CAST ConstVal { - $$ = ConstantExpr::getCast($3, $1->get()); +ConstExpr: Types CAST ConstVal TO Types { + $$ = ConstantExpr::getCast($3, $5->get()); + if ($1->get() != $5->get()) + ThrowException("Mismatching ConstExpr cast type"); delete $1; + delete $5; } | Types GETELEMENTPTR '(' ConstVal IndexList ')' { if (!isa($4->getType()))