c-typeck.c (null_pointer_constant_p): Replace use of TREE_CONSTANT_OVERFLOW with TREE_OVERFLOW.

* c-typeck.c (null_pointer_constant_p): Replace use of
	TREE_CONSTANT_OVERFLOW with TREE_OVERFLOW.
	(build_c_cast): Likewise.

From-SVN: r120747
This commit is contained in:
Roger Sayle 2007-01-13 05:39:57 +00:00 committed by Roger Sayle
parent d95787e646
commit 8bcd6380d1
2 changed files with 16 additions and 9 deletions

View File

@ -1,3 +1,9 @@
2007-01-12 Roger Sayle <roger@eyesopen.com>
* c-typeck.c (null_pointer_constant_p): Replace use of
TREE_CONSTANT_OVERFLOW with TREE_OVERFLOW.
(build_c_cast): Likewise.
2007-01-12 Roger Sayle <roger@eyesopen.com>
* tree.h (force_fit_type_double): Remove unused final argument.

View File

@ -1,6 +1,6 @@
/* Build expressions with type checking for C compiler.
Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
Free Software Foundation, Inc.
This file is part of GCC.
@ -117,7 +117,7 @@ null_pointer_constant_p (tree expr)
yet available everywhere required. */
tree type = TREE_TYPE (expr);
return (TREE_CODE (expr) == INTEGER_CST
&& !TREE_CONSTANT_OVERFLOW (expr)
&& !TREE_OVERFLOW (expr)
&& integer_zerop (expr)
&& (INTEGRAL_TYPE_P (type)
|| (TREE_CODE (type) == POINTER_TYPE
@ -3588,15 +3588,16 @@ build_c_cast (tree type, tree expr)
/* Ignore any integer overflow caused by the cast. */
if (TREE_CODE (value) == INTEGER_CST)
{
if (CONSTANT_CLASS_P (ovalue)
&& (TREE_OVERFLOW (ovalue) || TREE_CONSTANT_OVERFLOW (ovalue)))
if (CONSTANT_CLASS_P (ovalue) && TREE_OVERFLOW (ovalue))
{
/* Avoid clobbering a shared constant. */
value = copy_node (value);
TREE_OVERFLOW (value) = TREE_OVERFLOW (ovalue);
TREE_CONSTANT_OVERFLOW (value) = TREE_CONSTANT_OVERFLOW (ovalue);
if (!TREE_OVERFLOW (value))
{
/* Avoid clobbering a shared constant. */
value = copy_node (value);
TREE_OVERFLOW (value) = TREE_OVERFLOW (ovalue);
}
}
else if (TREE_OVERFLOW (value) || TREE_CONSTANT_OVERFLOW (value))
else if (TREE_OVERFLOW (value))
/* Reset VALUE's overflow flags, ensuring constant sharing. */
value = build_int_cst_wide (TREE_TYPE (value),
TREE_INT_CST_LOW (value),