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

            Bug ID: 57943
           Summary: [c++11] invalid decltype expression accepted in
                    template default type
           Product: gcc
           Version: 4.7.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: f.heckenb...@fh-soft.de

The following program compiles and apparently defaults T as a, altough a (0) is
not a valid expression.

struct a { };

template <typename T = decltype (a (0))> void f () { }

int main ()
{
  // decltype (a (0)) x;  // correctly rejected
  f ();
}

Reply via email to