typeck.c (build_function_call_real): Call fold on the CALL_EXPR.
authorKriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
Wed, 17 Jan 2001 05:59:51 +0000 (05:59 +0000)
committerKriang Lerdsuwanakij <lerdsuwa@gcc.gnu.org>
Wed, 17 Jan 2001 05:59:51 +0000 (05:59 +0000)
* typeck.c (build_function_call_real): Call fold on the CALL_EXPR.
* call.c (build_over_call): Add comment.

From-SVN: r39084

gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/typeck.c

index e013065e3906081a14654037f6f3e3c0b362eea4..a3d376ba00a4efb66bc74af7bcf2446af6504f54 100644 (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
index 5f12f7efe2002e57555f8cd08a8b3ffb73120f51..e3613ee72653d57bdf1da813d4a608584d66d470 100644 (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;
index 6a05ef9dd657a2762c8cba7dbfd072616c80028c..fafa55e8790ba763b18d3b2996f09d038cbe8306 100644 (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)