http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52343
Bug #: 52343 Summary: [C++11] alias-definition dont work in `template<class>` params type Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: trashyan...@wp.pl gcc version 4.7.0 20120203 (experimental) (niXman build) code: --------------------------- --------------------------- class bb {}; template<typename A> using a1 = int; //same with char, bool and long template<typename C> using a2 = bb; template<typename D> using a3 = double; template<template<class> class T> struct aa { }; aa<a1> zz1; //error: integral expression 'a1' is not constant WTF?? aa<a2> zz2; aa<a3> zz3; --------------------------- ---------------------------