[Bug c++/85127] New: Members implementation outside class doesn't compile if class name is an alias from a using
quentin@huot-marchand.fr
gcc-bugzilla@gcc.gnu.org
Thu Mar 29 22:02:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85127
Bug ID: 85127
Summary: Members implementation outside class doesn't compile
if class name is an alias from a using
Product: gcc
Version: 7.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: quentin@huot-marchand.fr
Target Milestone: ---
Hello,
As I am coding with a coding style with a margin of 80 characters, I try to
minimize my length as much as possible with the use of "using".
The problem is well described here : https://godbolt.org/g/C2qQgL
As you can see it compile on clang and msvc
Apparently you can't do :
template <class T>
class Base {
public:
void foo();
};
template <class T>
using B = Base<T>;
template <class T>
void B<T>::foo() {
}
But the standard seems to authorize it.
More information about the Gcc-bugs
mailing list