typeck.c (build_function_call_real): Call fold on the CALL_EXPR.

* typeck.c (build_function_call_real): Call fold on the CALL_EXPR.
	* call.c (build_over_call): Add comment.

From-SVN: r39084
This commit is contained in:
Kriang Lerdsuwanakij 2001-01-17 05:59:51 +00:00 committed by Kriang Lerdsuwanakij
parent 5dfcd8e17e
commit dc3799c144
3 changed files with 12 additions and 4 deletions

View File

@ -1,3 +1,8 @@
2001-01-16 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
* typeck.c (build_function_call_real): Call fold on the CALL_EXPR.
* call.c (build_over_call): Add comment.
2001-01-16 Daniel Berlin <dberlin@redhat.com>
* cvt.c (ocp_convert): Handle vector type conversion

View File

@ -1,6 +1,6 @@
/* Functions related to invoking methods and overloaded functions.
Copyright (C) 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
1999, 2000 Free Software Foundation, Inc.
1999, 2000, 2001 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com) and
modified by Brendan Kehoe (brendan@cygnus.com).
@ -4261,6 +4261,8 @@ build_over_call (cand, args, flags)
return exp;
}
/* Some built-in function calls will be evaluated at
compile-time in fold (). */
fn = fold (build_call (fn, converted_args));
if (VOID_TYPE_P (TREE_TYPE (fn)))
return fn;

View File

@ -1,6 +1,6 @@
/* Build expressions with type checking for C++ compiler.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
1999, 2000 Free Software Foundation, Inc.
1999, 2000, 2001 Free Software Foundation, Inc.
Hacked by Michael Tiemann (tiemann@cygnus.com)
This file is part of GNU CC.
@ -3075,8 +3075,9 @@ build_function_call_real (function, params, require_complete, flags)
return result;
}
/* C++ */
result = build_call (function, coerced_params);
/* Some built-in function calls will be evaluated at
compile-time in fold (). */
result = fold (build_call (function, coerced_params));
value_type = TREE_TYPE (result);
if (require_complete)