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

            Bug ID: 57279
           Summary: [C++11] alias declaration fails to declare function
                    types with cv-qualifiers
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: daniel.kruegler at googlemail dot com

The following code is rejected if compiled with gcc 4.9.0 20130505
(experimental) using the flags

-std=c++11 -Wall -pedantic-errors

//------------------------------------
typedef void fc1() const; // OK
typedef void frr1() &&; // OK
typedef void fcr1() const &;
using fc2 = void() const; // #4
using frr2 = void() &&; // OK
using fcr2 = void() const &; // #6
//------------------------------------

"main.cpp|4|error: invalid qualifiers on non-member function type|
 main.cpp|6|error: invalid qualifiers on non-member function type|"

According to 8.3.5 [dcl.fct] p6 function type declarations with cv-qualifiers
are valid via alias-declarations (b3).

Reply via email to