]> granicus.if.org Git - clang/commitdiff
GCC workaround: use explicit qualification to avoid injected class name.
authorJohn McCall <rjmccall@apple.com>
Sat, 4 Mar 2017 21:46:14 +0000 (21:46 +0000)
committerJohn McCall <rjmccall@apple.com>
Sat, 4 Mar 2017 21:46:14 +0000 (21:46 +0000)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52625

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@296980 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/CodeGen/ConstantInitBuilder.h

index 3e183e6f85d0e6f9c119943cd3f5c910db32f83c..a85fba3f3ede29a17cc9f9f00d3738601e5eba67 100644 (file)
@@ -485,8 +485,10 @@ class ConstantArrayBuilder
     : public ConstantArrayBuilderTemplateBase<ConstantInitBuilderTraits> {
   template <class Traits>
   friend class ConstantInitBuilderTemplateBase;
+
+  // The use of explicit qualification is a GCC workaround.
   template <class Impl, class Traits>
-  friend class ConstantAggregateBuilderTemplateBase;
+  friend class CodeGen::ConstantAggregateBuilderTemplateBase;
 
   ConstantArrayBuilder(ConstantInitBuilder &builder,
                        ConstantAggregateBuilderBase *parent,
@@ -500,8 +502,10 @@ class ConstantStructBuilder
     : public ConstantStructBuilderTemplateBase<ConstantInitBuilderTraits> {
   template <class Traits>
   friend class ConstantInitBuilderTemplateBase;
+
+  // The use of explicit qualification is a GCC workaround.
   template <class Impl, class Traits>
-  friend class ConstantAggregateBuilderTemplateBase;
+  friend class CodeGen::ConstantAggregateBuilderTemplateBase;
 
   ConstantStructBuilder(ConstantInitBuilder &builder,
                         ConstantAggregateBuilderBase *parent,