Author: rsmith Date: Tue Feb 2 17:11:49 2016 New Revision: 259598 URL: http://llvm.org/viewvc/llvm-project?rev=259598&view=rev Log: Work around build failure due to GCC 4.8.1 bug. We don't completely understand the details of the bug, but avoiding overloading llvm::cast with another function template sidesteps it.
See gcc.gnu.org/PR58022 for details of the bug, and llvm.org/PR26362 for more backgound on how it manifested in Clang. Patch by Igor Sugak! Modified: cfe/trunk/lib/CodeGen/Address.h Modified: cfe/trunk/lib/CodeGen/Address.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/Address.h?rev=259598&r1=259597&r2=259598&view=diff ============================================================================== --- cfe/trunk/lib/CodeGen/Address.h (original) +++ cfe/trunk/lib/CodeGen/Address.h Tue Feb 2 17:11:49 2016 @@ -104,23 +104,15 @@ public: }; } -} -namespace llvm { - // Present a minimal LLVM-like casting interface. - template <class U> inline U cast(clang::CodeGen::Address addr) { - return U::castImpl(addr); - } - template <class U> inline bool isa(clang::CodeGen::Address addr) { - return U::isaImpl(addr); - } +// Present a minimal LLVM-like casting interface. +template <class U> inline U cast(CodeGen::Address addr) { + return U::castImpl(addr); +} +template <class U> inline bool isa(CodeGen::Address addr) { + return U::isaImpl(addr); } -namespace clang { - // Make our custom isa and cast available in namespace clang, to mirror - // what we do for LLVM's versions in Basic/LLVM.h. - using llvm::isa; - using llvm::cast; } #endif _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits