The following invalid code is accepted by g++:

struct exception {};

template <typename T> void foo() throw(exception);
template <typename T> void foo(); // Error: exception-specification mismatch

struct bar
{
  template <typename T> friend void foo(); // Error: exception-specification
mismatch
};


-- 
           Summary: g++ accepts multiple function template declarations even
                    if exception-specification doesn't match.
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: seefeld at sympatico dot ca


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

Reply via email to