aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDaniel Berlin <dberlin@dberlin.org>2007-04-07 00:19:46 +0000
committerDaniel Berlin <dberlin@gcc.gnu.org>2007-04-07 00:19:46 +0000
commit1df918ac8ec140974275e1d976d6d828789bfaa0 (patch)
tree7fdd6d2fc0a5b2c2914e58ae503907b961d62cdd /gcc
parent1bfe2e5fca9f4962aed93b1a1696784bf9cf1909 (diff)
downloadgcc-1df918ac8ec140974275e1d976d6d828789bfaa0.zip
gcc-1df918ac8ec140974275e1d976d6d828789bfaa0.tar.gz
gcc-1df918ac8ec140974275e1d976d6d828789bfaa0.tar.bz2
in / 2007-04-06 Daniel Berlin <dberlin@dberlin.org>
in / 2007-04-06 Daniel Berlin <dberlin@dberlin.org> * tree.c (staticp): No longer use staticp langhook. * langhooks.c (lhd_staticp): Removed. * langhooks.h (struct lang_hooks): Remove staticp. * c-common.c (c_staticp): Remove. * c-common.h (c_staticp): Ditto. * langhooks-defs.h (lhd_staticp): Ditto. (LHD_HOOKS_STATICP): Ditto * tree.h (gcc_assert_lowered): New macro. in cp/ 2007-04-06 Daniel Berlin <dberlin@dberlin.org> * cp-objcp-common.c (cxx_staticp): Remove. * cp-objcp-common.h (LANG_HOOKS_STATICP): Remove. * cp-tree.h (cxx_staticp): From-SVN: r123636
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog11
-rw-r--r--gcc/c-common.c9
-rw-r--r--gcc/c-common.h2
-rw-r--r--gcc/c-objc-common.h2
-rw-r--r--gcc/cp/ChangeLog6
-rw-r--r--gcc/cp/cp-objcp-common.c15
-rw-r--r--gcc/cp/cp-objcp-common.h2
-rw-r--r--gcc/cp/cp-tree.h1
-rw-r--r--gcc/langhooks-def.h3
-rw-r--r--gcc/langhooks.c8
-rw-r--r--gcc/langhooks.h3
-rw-r--r--gcc/tree.c14
-rw-r--r--gcc/tree.h1
13 files changed, 23 insertions, 54 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 47a62ad..e6e5b7a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,14 @@
+2007-04-06 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree.c (staticp): No longer use staticp langhook.
+ * langhooks.c (lhd_staticp): Removed.
+ * langhooks.h (struct lang_hooks): Remove staticp.
+ * c-common.c (c_staticp): Remove.
+ * c-common.h (c_staticp): Ditto.
+ * langhooks-defs.h (lhd_staticp): Ditto.
+ (LHD_HOOKS_STATICP): Ditto
+ * tree.h (gcc_assert_lowered): New macro.
+
2007-04-06 Zdenek Dvorak <dvorakz@suse.cz>
* tree-ssa-loop-niter.c (idx_infer_loop_bounds): Add and use
diff --git a/gcc/c-common.c b/gcc/c-common.c
index 8f71e691..af8b8aa 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -4294,15 +4294,6 @@ c_expand_body (tree fndecl)
decl_fini_priority_lookup (fndecl));
}
-/* Hook used by staticp to handle language-specific tree codes. */
-
-tree
-c_staticp (tree exp)
-{
- return (TREE_CODE (exp) == COMPOUND_LITERAL_EXPR
- && TREE_STATIC (COMPOUND_LITERAL_EXPR_DECL (exp))
- ? exp : NULL);
-}
/* Given a boolean expression ARG, return a tree representing an increment
diff --git a/gcc/c-common.h b/gcc/c-common.h
index b128e31..40025c3 100644
--- a/gcc/c-common.h
+++ b/gcc/c-common.h
@@ -825,8 +825,6 @@ extern bool vector_types_convertible_p (tree t1, tree t2, bool emit_lax_note);
extern rtx c_expand_expr (tree, rtx, enum machine_mode, int, rtx *);
extern void c_expand_body (tree);
-extern tree c_staticp (tree);
-
extern void init_c_lex (void);
extern void c_cpp_builtins (cpp_reader *);
diff --git a/gcc/c-objc-common.h b/gcc/c-objc-common.h
index f3f0867..00519c7 100644
--- a/gcc/c-objc-common.h
+++ b/gcc/c-objc-common.h
@@ -56,8 +56,6 @@ extern void c_initialize_diagnostics (diagnostic_context *);
#define LANG_HOOKS_FINISH_INCOMPLETE_DECL c_finish_incomplete_decl
#undef LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS
#define LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS true
-#undef LANG_HOOKS_STATICP
-#define LANG_HOOKS_STATICP c_staticp
#undef LANG_HOOKS_NO_BODY_BLOCKS
#define LANG_HOOKS_NO_BODY_BLOCKS true
#undef LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index f5b7ace..5d3491f 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,9 @@
+2007-04-06 Daniel Berlin <dberlin@dberlin.org>
+
+ * cp-objcp-common.c (cxx_staticp): Remove.
+ * cp-objcp-common.h (LANG_HOOKS_STATICP): Remove.
+ * cp-tree.h (cxx_staticp):
+
2007-04-04 Danny Smith <dannysmith.users.sourceforge.net>
* class.c (check_for_override): Don't remove dllmport attribute
diff --git a/gcc/cp/cp-objcp-common.c b/gcc/cp/cp-objcp-common.c
index af8eb94..f74c60a 100644
--- a/gcc/cp/cp-objcp-common.c
+++ b/gcc/cp/cp-objcp-common.c
@@ -200,21 +200,6 @@ cxx_types_compatible_p (tree x, tree y)
return 0;
}
-tree
-cxx_staticp (tree arg)
-{
- switch (TREE_CODE (arg))
- {
- case BASELINK:
- return staticp (BASELINK_FUNCTIONS (arg));
-
- default:
- break;
- }
-
- return NULL_TREE;
-}
-
/* Stubs to keep c-opts.c happy. */
void
push_file_scope (void)
diff --git a/gcc/cp/cp-objcp-common.h b/gcc/cp/cp-objcp-common.h
index 23e1f0f..2d40e22 100644
--- a/gcc/cp/cp-objcp-common.h
+++ b/gcc/cp/cp-objcp-common.h
@@ -59,8 +59,6 @@ extern tree objcp_tsubst_copy_and_build (tree, tree, tsubst_flags_t,
#define LANG_HOOKS_EXPAND_DECL c_expand_decl
#undef LANG_HOOKS_PARSE_FILE
#define LANG_HOOKS_PARSE_FILE c_common_parse_file
-#undef LANG_HOOKS_STATICP
-#define LANG_HOOKS_STATICP cxx_staticp
#undef LANG_HOOKS_DUP_LANG_SPECIFIC_DECL
#define LANG_HOOKS_DUP_LANG_SPECIFIC_DECL cxx_dup_lang_specific_decl
#undef LANG_HOOKS_SET_DECL_ASSEMBLER_NAME
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index 3b3821e..32eb084 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -4816,7 +4816,6 @@ extern bool cp_var_mod_type_p (tree, tree);
extern void cxx_initialize_diagnostics (struct diagnostic_context *);
extern int cxx_types_compatible_p (tree, tree);
extern void init_shadowed_var_for_decl (void);
-extern tree cxx_staticp (tree);
/* in cp-gimplify.c */
extern int cp_gimplify_expr (tree *, tree *, tree *);
diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h
index 004b3c5..4416bb9 100644
--- a/gcc/langhooks-def.h
+++ b/gcc/langhooks-def.h
@@ -49,7 +49,6 @@ extern tree lhd_return_tree (tree);
extern tree lhd_return_null_tree_v (void);
extern tree lhd_return_null_tree (tree);
extern tree lhd_do_nothing_iii_return_null_tree (int, int, int);
-extern tree lhd_staticp (tree);
extern void lhd_print_tree_nothing (FILE *, tree, int);
extern const char *lhd_decl_printable_name (tree, int);
extern const char *lhd_dwarf_name (tree, int);
@@ -110,7 +109,6 @@ extern void lhd_omp_firstprivatize_type_sizes (struct gimplify_omp_ctx *,
#define LANG_HOOKS_EXPAND_EXPR lhd_expand_expr
#define LANG_HOOKS_EXPAND_DECL lhd_expand_decl
#define LANG_HOOKS_FINISH_INCOMPLETE_DECL lhd_do_nothing_t
-#define LANG_HOOKS_STATICP lhd_staticp
#define LANG_HOOKS_DUP_LANG_SPECIFIC_DECL lhd_do_nothing_t
#define LANG_HOOKS_SET_DECL_ASSEMBLER_NAME lhd_set_decl_assembler_name
#define LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS false
@@ -296,7 +294,6 @@ extern tree lhd_make_node (enum tree_code);
LANG_HOOKS_EXPAND_DECL, \
LANG_HOOKS_FINISH_INCOMPLETE_DECL, \
LANG_HOOKS_MARK_ADDRESSABLE, \
- LANG_HOOKS_STATICP, \
LANG_HOOKS_DUP_LANG_SPECIFIC_DECL, \
LANG_HOOKS_SET_DECL_ASSEMBLER_NAME, \
LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS, \
diff --git a/gcc/langhooks.c b/gcc/langhooks.c
index 919f05d..49a5a07 100644
--- a/gcc/langhooks.c
+++ b/gcc/langhooks.c
@@ -117,14 +117,6 @@ lhd_print_tree_nothing (FILE * ARG_UNUSED (file),
{
}
-/* Called from staticp. */
-
-tree
-lhd_staticp (tree ARG_UNUSED (exp))
-{
- return NULL;
-}
-
/* Called from check_global_declarations. */
bool
diff --git a/gcc/langhooks.h b/gcc/langhooks.h
index f0220fc..85dbec6 100644
--- a/gcc/langhooks.h
+++ b/gcc/langhooks.h
@@ -324,9 +324,6 @@ struct lang_hooks
successful. */
bool (*mark_addressable) (tree);
- /* Hook called by staticp for language-specific tree codes. */
- tree (*staticp) (tree);
-
/* Replace the DECL_LANG_SPECIFIC data, which may be NULL, of the
DECL_NODE with a newly GC-allocated copy. */
void (*dup_lang_specific_decl) (tree);
diff --git a/gcc/tree.c b/gcc/tree.c
index 0ea18b2..816275c 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -1986,10 +1986,7 @@ staticp (tree arg)
return arg;
case COMPONENT_REF:
- /* If the thing being referenced is not a field, then it is
- something language specific. */
- if (TREE_CODE (TREE_OPERAND (arg, 1)) != FIELD_DECL)
- return (*lang_hooks.staticp) (arg);
+ gcc_assert (TREE_CODE (TREE_OPERAND (arg, 1)) == FIELD_DECL);
/* If we are referencing a bitfield, we can't evaluate an
ADDR_EXPR at compile time and so it isn't a constant. */
@@ -2015,11 +2012,10 @@ staticp (tree arg)
return false;
default:
- if ((unsigned int) TREE_CODE (arg)
- >= (unsigned int) LAST_AND_UNUSED_TREE_CODE)
- return lang_hooks.staticp (arg);
- else
- return NULL;
+ /* All language specific tree codes should have been lowered by
+ now. */
+ gcc_assert_lowered (arg);
+ return NULL;
}
}
diff --git a/gcc/tree.h b/gcc/tree.h
index 64efe7c..e781e64d 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -921,6 +921,7 @@ extern void omp_clause_range_check_failed (const tree, const char *, int,
#endif
+#define gcc_assert_lowered(NODE) gcc_assert (TREE_CODE (NODE) <= LAST_AND_UNUSED_TREE_CODE)
#define TREE_BLOCK(NODE) *(tree_block (NODE))
#include "tree-check.h"