[Bug ipa/60761] New: Names of all function clones in g++ are "<built-in>", in both warnings and dumps

jamborm at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Apr 4 15:21:00 GMT 2014


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60761

            Bug ID: 60761
           Summary: Names of all function clones in g++ are "<built-in>",
                    in both warnings and dumps
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jamborm at gcc dot gnu.org
                CC: jakub at gcc dot gnu.org

Since revision r207465, all names of function clones in g++ (as
opposed to the C front-end) are "<built-in>", in dumps and even in
warnings, for example:

mjambor@virgil:~/gcc/bisect/test/clonenames$ ~/gcc/bisect/inst/bin/g++ -O3 -S
-Wall zz.C -fno-inline
zz.C: In function ‘<built-in>’:
zz.C:14:13: warning: iteration 3u invokes undefined behavior
[-Waggressive-loop-optimizations] 
     z[i] = i;
             ^
zz.C:13:3: note: containing loop
   for (int i = 0; i < s; i++)
   ^
zz.C:14:8: warning: array subscript is above array bounds [-Warray-bounds]
     z[i] = i;
        ^
mjambor@virgil:~/gcc/bisect/test/clonenames$ cat zz.C
extern int sum;

void do_sum (char *p)
{
  for (int i = 0; i < 2; i++)
    sum += p[i];
}

void
foo (int s)
{
  char z[3];
  for (int i = 0; i < s; i++)
    z[i] = i;
  do_sum (z);
}

int
bar (int i)
{
  foo (4);
  return 0;
}


More information about the Gcc-bugs mailing list