diff options
| author | John McCall <rjmccall@apple.com> | 2017-03-04 21:46:14 +0000 |
|---|---|---|
| committer | John McCall <rjmccall@apple.com> | 2017-03-04 21:46:14 +0000 |
| commit | 66bd85a96a0569b2e9d70ed57242431b82c2a93e (patch) | |
| tree | 842d2d9dff8695eb496b6f269bbd0e8768538c09 | |
| parent | 32e0d18605c260ad9a19b1f58c85f53606e0e142 (diff) | |
| download | bcm5719-llvm-66bd85a96a0569b2e9d70ed57242431b82c2a93e.tar.gz bcm5719-llvm-66bd85a96a0569b2e9d70ed57242431b82c2a93e.zip | |
GCC workaround: use explicit qualification to avoid injected class name.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52625
llvm-svn: 296980
| -rw-r--r-- | clang/include/clang/CodeGen/ConstantInitBuilder.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/clang/include/clang/CodeGen/ConstantInitBuilder.h b/clang/include/clang/CodeGen/ConstantInitBuilder.h index 3e183e6f85d..a85fba3f3ed 100644 --- a/clang/include/clang/CodeGen/ConstantInitBuilder.h +++ b/clang/include/clang/CodeGen/ConstantInitBuilder.h @@ -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, |

