X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2Ftree.c;h=3c456a2f409f9473210db7ae67b2e61d010bf287;hp=9dbd08450cdc630a415e14dedb390afd7185406f;hb=27a27622b41f394a00652df420d7b7fffc9fcddb;hpb=d3c2c54ed466a4b352694c728b419d8ec10133bb diff --git a/gcc/tree.c b/gcc/tree.c index 9dbd08450cd..3c456a2f409 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -9083,10 +9083,13 @@ build_common_builtin_nodes (void) tmp = tree_cons (NULL_TREE, size_type_node, void_list_node); ftype = build_function_type (ptr_type_node, tmp); local_define_builtin ("__builtin_alloca", ftype, BUILT_IN_ALLOCA, - "alloca", - ECF_MALLOC | (flag_stack_check ? 0 : ECF_NOTHROW)); + "alloca", ECF_MALLOC | ECF_NOTHROW); } + /* If we're checking the stack, `alloca' can throw. */ + if (flag_stack_check) + TREE_NOTHROW (built_in_decls[BUILT_IN_ALLOCA]) = 0; + tmp = tree_cons (NULL_TREE, ptr_type_node, void_list_node); tmp = tree_cons (NULL_TREE, ptr_type_node, tmp); tmp = tree_cons (NULL_TREE, ptr_type_node, tmp);