aboutsummaryrefslogtreecommitdiff
path: root/gcc/stmt.c
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1999-10-27 05:32:43 +0000
committerJeff Law <law@gcc.gnu.org>1999-10-26 23:32:43 -0600
commit95815af9d258082b7548e23fc2595ff637a48e1a (patch)
tree5857bf4a0d89bf0b865b80bc4f5f1f48d3d2041a /gcc/stmt.c
parent283a25451f48b420c45ad4068031b121fd907767 (diff)
downloadgcc-95815af9d258082b7548e23fc2595ff637a48e1a.zip
gcc-95815af9d258082b7548e23fc2595ff637a48e1a.tar.gz
gcc-95815af9d258082b7548e23fc2595ff637a48e1a.tar.bz2
c-typeck.c (build_function_call): Check that the built-in function is of class BUILT_IN_NORMAL before trying to...
* c-typeck.c (build_function_call): Check that the built-in function is of class BUILT_IN_NORMAL before trying to recongize it as BUILT_IN_ABS. * calls.c (calls_function_1): Similarly for BUILT_IN_ALLOCA. * stmt.c (expand_end_cae): Similarly for BUILT_IN_CLASSIFY_TYPE. * call.c (build_over_call): Check that the built-in function is of class BUILT_IN_NORMAL before trying to recongize it as BUILT_IN_ABS. * typeck.c (build_function_call_real): Similarly. From-SVN: r30208
Diffstat (limited to 'gcc/stmt.c')
-rw-r--r--gcc/stmt.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/stmt.c b/gcc/stmt.c
index 53fc1ed..eeab664 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -5369,6 +5369,7 @@ expand_end_case (orig_index)
|| (TREE_CODE (index_expr) == CALL_EXPR
&& TREE_CODE (TREE_OPERAND (index_expr, 0)) == ADDR_EXPR
&& TREE_CODE (TREE_OPERAND (TREE_OPERAND (index_expr, 0), 0)) == FUNCTION_DECL
+ && DECL_BUILT_IN_CLASS (TREE_OPERAND (TREE_OPERAND (index_expr, 0), 0)) == BUILT_IN_NORMAL
&& DECL_FUNCTION_CODE (TREE_OPERAND (TREE_OPERAND (index_expr, 0), 0)) == BUILT_IN_CLASSIFY_TYPE)
|| (TREE_CODE (index_expr) == COMPOUND_EXPR
&& TREE_CODE (TREE_OPERAND (index_expr, 1)) == INTEGER_CST))