https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94255

--- Comment #1 from Vince Bridgers <vince.a.bridgers at gmail dot com> ---
The corrected code successfully compiles. Basically, making sure the template
specialization is in the correct namespace. 

namespace clang {
  class DynTypedNode {
  private:
    template <typename T, typename EnablerT = void> struct BaseConverter;
    template <typename T> struct ValueConverter {};
  };
  namespace ast_type_traits {
    using DynTypedNode = ::clang::DynTypedNode;
  }; // end namespace ast_type_traits
}; // end namespace clang

namespace clang {
  //namespace ast_type_traits {
    template <> struct DynTypedNode::BaseConverter<int, void> : public
ValueConverter<int> {};
  //}; // end namespace ast_type_traits
}; // end namespace clang

int main(void) {
    return 0;
}

Reply via email to