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

             Bug #: 55185
           Summary: Error generated on extern inline function which isn't
                    called
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: hjl.to...@gmail.com


On x86-64:

[hjl@gnu-tools-1 tmp]$ cat y.i
extern double strtod (const char *__restrict __nptr,
        char **__restrict __endptr);

extern __inline double
atof (const char *__nptr)
{
  return strtod (__nptr, (char **) ((void *)0));
}
[hjl@gnu-tools-1 tmp]$ gcc -S -O y.i
[hjl@gnu-tools-1 tmp]$ cat y.s
    .file    "y.i"
    .ident    "GCC: (GNU) 4.7.2 20120921 (Red Hat 4.7.2-2)"
    .section    .note.GNU-stack,"",@progbits
[hjl@gnu-tools-1 tmp]$ gcc -S -O y.i -mno-sse
y.i: In function ‘atof’:
y.i:6:1: error: SSE register return with SSE disabled
[hjl@gnu-tools-1 tmp]$

Reply via email to