This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c/81368] New: GCC reports bad option if -fdata-sections/-ffunction-sections is specified through #pragma or function attribute


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81368

            Bug ID: 81368
           Summary: GCC reports bad option if
                    -fdata-sections/-ffunction-sections is specified
                    through #pragma or function attribute
           Product: gcc
           Version: 7.1.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: sebastian.schrader at ossmail dot de
  Target Milestone: ---

GCC 7.1.1 reports a bad option if -fdata-sections or -ffunction-section is
specified through the #pragma GCC optimize directive or the optimize function
attribute.

Earlier versions of GCC, such as 5.4.0 don't report a bad option and also act
upon  it (verified with objdump -x).

Example with #pragma:
#pragma GCC optimize("-ffunction-sections")

int f(int x)
{
    return x;
}

% gcc -o pragma.o -c pragma.c
pragma.c:1:9: warning: bad option ‘-ffunction-sections’ to pragma ‘optimize’
[-Wpragmas]
 #pragma GCC optimize("-ffunction-sections")
         ^~~
pragma.c:4:1: warning: bad option ‘-ffunction-sections’ to attribute ‘optimize’
[-Wattributes]
 {
 ^

Example with attribute:
__attribute__((optimize("-fdata-sections")))
int g(int x)
{
    return x;
}

% gcc -o attribute.o -c attribute.c
attribute.c:3:1: warning: bad option ‘-fdata-sections’ to attribute ‘optimize’
[-Wattributes]
 {
 ^

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]