+2005-03-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-semantics.c (build_stmt): Use TYPE_P instead of
+ IS_NON_TYPE_CODE_CLASS.
+ * tree.h (IS_NON_TYPE_CODE_CLASS): Remove.
+ (NON_TYPE_CHECK): Use TYPE_P instead of
+ IS_NON_TYPE_CODE_CLASS.
+
2005-03-05 James A. Morrison <phython@gcc.gnu.org>
* doc/c-tree.texi: Wrap comments in @r{}.
for (i = 0; i < length; i++)
{
tree t = va_arg (p, tree);
- if (t && IS_NON_TYPE_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (t))))
+ if (t && !TYPE_P (t))
side_effects |= TREE_SIDE_EFFECTS (t);
TREE_OPERAND (ret, i) = t;
}
+2005-03-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c (build_expr_wfl, expr_add_location): Use TYPE_P
+ instead of IS_NON_TYPE_CODE_CLASS.
+
2005-03-04 Andrew Haley <aph@redhat.com>
PR java/18362
EXPR_WFL_NODE (wfl) = node;
if (node)
{
- if (IS_NON_TYPE_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (node))))
+ if (!TYPE_P (node))
TREE_SIDE_EFFECTS (wfl) = TREE_SIDE_EFFECTS (node);
TREE_TYPE (wfl) = TREE_TYPE (node);
}
EXPR_WFL_EMIT_LINE_NOTE (wfl) = 1;
if (node)
{
- if (IS_NON_TYPE_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (node))))
+ if (!TYPE_P (node))
TREE_SIDE_EFFECTS (wfl) = TREE_SIDE_EFFECTS (node);
TREE_TYPE (wfl) = TREE_TYPE (node);
}
#define EXPRESSION_CLASS_P(CODE)\
(TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_expression)
-/* Returns nonzero iff CLASS is not the tree code of a type. */
-
-#define IS_NON_TYPE_CODE_CLASS(CLASS) ((CLASS) != tcc_type)
-
/* Returns nonzero iff CODE represents a type or declaration. */
#define IS_TYPE_OR_DECL_P(CODE)\
/* These checks have to be special cased. */
#define NON_TYPE_CHECK(T) __extension__ \
({ const tree __t = (T); \
- char const __c = TREE_CODE_CLASS (TREE_CODE (__t)); \
- if (!IS_NON_TYPE_CODE_CLASS (__c)) \
+ if (TYPE_P (__t)) \
tree_class_check_failed (__t, tcc_type, __FILE__, __LINE__, \
__FUNCTION__); \
__t; })