c++/5998: regression, all builtins disabled

mrs@wrs.com mrs@wrs.com
Mon Mar 18 12:36:00 GMT 2002


>Number:         5998
>Category:       c++
>Synopsis:       regression, all builtins disabled
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Mar 18 12:36:01 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Mike Stump
>Release:        top of tree cvs
>Organization:
>Environment:
sparc-sun-solaris2.7, affects all hosts/targets
>Description:
Mark recently put in:

>   /* In C++, we never create builtin functions whose name does not
>      begin with `__'.  Users should be using headers to get prototypes
>      in C++.  It would be nice if we could warn when `-fbuiltin' is
>      used explicitly, but we do not have that information.  */
>   flag_no_builtin = 1;

this this is wrong.  It disables all builtins, and causes
performance regressions with C++ code:

#include <memory.h>

int a, b;

int main() {
    memcpy(&a, &b, sizeof(a));
}

for example.  Also, alloca should not just disappear,
it is a long standing extension, and disappearing it
should be well thought out, not just done.

See also http://gcc.gnu.org/ml/gcc/2002-03/msg00895.html
for the mailing list traffic.
>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the Gcc-prs mailing list