[LLVMbugs] [Bug 4234] New: LLVMCodeGen will not build with Visual Studio 2005
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Tue May 19 08:10:15 PDT 2009
http://llvm.org/bugs/show_bug.cgi?id=4234
Summary: LLVMCodeGen will not build with Visual Studio 2005
Product: new-bugs
Version: unspecified
Platform: PC
OS/Version: Windows XP
Status: NEW
Keywords: build-problem
Severity: normal
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: alan.s.king at gmail.com
CC: llvmbugs at cs.uiuc.edu
After updating to the latest version of the trunk repository, LLVM would no
longer build properly in Visual Studio 2005, giving the following compiler
errors:
error C2888: 'LiveIntervals::InstrSlots' : symbol cannot be defined within
namespace 'llvm' C:\llvm\include\llvm\CodeGen\LiveIntervalAnalysis.h 99
error C2888: 'LiveIntervals::SRInfo' : symbol cannot be defined within
namespace 'llvm' C:\llvm\include\llvm\CodeGen\LiveIntervalAnalysis.h 477
I decided to try and isolate the source of the problem by looking at the recent
changes to files involved with the LLVMCodeGen project and found that two
recently added files (Spiller.cpp/h) use the LiveIntervals class. Digging a
little deeper I found that Spiller.h was using an unusual form of in-line
predeclaration of four classes to function. I have no idea whether this is
technically a legal form of predeclaration, but it is not going well with the
compiler.
I have attached a patch for this file that performs the predeclaration in a
more usual manner found throughout the LLVM project files and fixes the
aforementioned compiler warnings in Visual Studio 2005.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list