diff options
author | Mark Mitchell <mark@codesourcery.com> | 2002-12-01 17:51:51 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2002-12-01 17:51:51 +0000 |
commit | c9f8536c5dc8c115f26aaeb87585dbce0eeb4a10 (patch) | |
tree | 58fa62032c3e44c9d8f282780afee759f3d7edba /gcc/cp/decl2.c | |
parent | 335c9de73baef4d5c67c1b00dd52caff22d92f21 (diff) | |
download | gcc-c9f8536c5dc8c115f26aaeb87585dbce0eeb4a10.zip gcc-c9f8536c5dc8c115f26aaeb87585dbce0eeb4a10.tar.gz gcc-c9f8536c5dc8c115f26aaeb87585dbce0eeb4a10.tar.bz2 |
re PR c++/8332 (strlen/template interaction causes ICE)
PR c++/8332
PR c++/8493
* decl.c (cxx_init_decl_processing): Use size_type_node, not
c_size_type_node.
* decl2.c (coerce_new_type): Likewise.
* except.c (do_allocate_exception): Likewise.
* builtin-types.def (BT_SIZE): Use size_type_node.
* builtins.c (fold_builtin): Make the builtin strlen returns a
size_t, not a sizetype.
* c-common.c (c_sizeof_or_alignof_type): Use size_type_node, not
c_size_type_node.
(c_alignof_expr): Likewise.
(c_common_nodes_and_builtins): Likewise.
* c-common.h (CTI_C_SIZE_TYPE): Remove.
(c_size_type_node): Likewise.
* c-format.c (T_ST): Use size_type_node, not c_size_type_node.
* tree.h (TI_SIZE_TYPE): New enumeral.
(size_type_node): Likewise.
PR c++/8332
PR c++/8493
* g++.dg/template/strlen1.C: New test.
From-SVN: r59689
Diffstat (limited to 'gcc/cp/decl2.c')
-rw-r--r-- | gcc/cp/decl2.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c index 209a15b..61efb58 100644 --- a/gcc/cp/decl2.c +++ b/gcc/cp/decl2.c @@ -1468,17 +1468,17 @@ coerce_new_type (type) e = 1, error ("`operator new' must return type `%T'", ptr_type_node); if (!args || args == void_list_node - || !same_type_p (TREE_VALUE (args), c_size_type_node)) + || !same_type_p (TREE_VALUE (args), size_type_node)) { e = 2; if (args && args != void_list_node) args = TREE_CHAIN (args); - pedwarn ("`operator new' takes type `size_t' (`%T') as first parameter", c_size_type_node); + pedwarn ("`operator new' takes type `size_t' (`%T') as first parameter", size_type_node); } switch (e) { case 2: - args = tree_cons (NULL_TREE, c_size_type_node, args); + args = tree_cons (NULL_TREE, size_type_node, args); /* FALLTHROUGH */ case 1: type = build_exception_variant |