Build of latest llvm gives warning and error

Building of llvm with gcc-4.5.2-1 gives these warnings:

1) Building FileManagerTest

"llvm[4]: Compiling FileManagerTest.cpp for Debug+Asserts build
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp: In member function 'virtual void<unnamed>::FileManagerTest_NoVirtualDirectoryExistsBeforeAVirtualFileIsAdded_Test::TestBody()':
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:100:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const clang::DirectoryEntry]'
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:100:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const clang::DirectoryEntry]'
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:101:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const clang::DirectoryEntry]'
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:101:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const clang::DirectoryEntry]'
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:102:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const clang::DirectoryEntry]'
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:102:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const clang::DirectoryEntry]'
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp: In member function 'virtual void<unnamed>::FileManagerTest_getVirtualFileCreatesDirectoryEntriesForAncestors_Test::TestBody()':
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:111:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const clang::DirectoryEntry]'
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:111:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const clang::DirectoryEntry]'
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp: In member function 'virtual void<unnamed>::FileManagerTest_getFileReturnsNULLForNonexistentFile_Test::TestBody()':
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:185:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const clang::FileEntry]'
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:185:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const clang::FileEntry]'"

2) ExecutionEngineTest

"llvm[2]: Compiling ExecutionEngineTest.cpp for Debug+Asserts build
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp: In member function 'virtual void<unnamed>::ExecutionEngineTest_ForwardGlobalMapping_Test::TestBody()':
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:52:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = void]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:52:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = void]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:58:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = void]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:58:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = void]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp: In member function 'virtual void<unnamed>::ExecutionEngineTest_ReverseGlobalMapping_Test::TestBody()':
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:77:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const llvm::GlobalValue]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:77:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const llvm::GlobalValue]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:88:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const llvm::GlobalValue]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:88:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const llvm::GlobalValue]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:90:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const llvm::GlobalValue]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:90:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const llvm::GlobalValue]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp: In member function 'virtual void<unnamed>::ExecutionEngineTest_ClearModuleMappings_Test::TestBody()':
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:106:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const llvm::GlobalValue]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:106:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const llvm::GlobalValue]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp: In member function 'virtual void<unnamed>::ExecutionEngineTest_DestructionRemovesGlobalMapping_Test::TestBody()':
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:126:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const llvm::GlobalValue]'
C:/Programming/VersionControl/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp:126:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const llvm::GlobalValue]'"

3) CommandLineTest

"llvm[2]: Compiling CommandLineTest.cpp for Debug+Asserts build
C:/Programming/VersionControl/llvm/unittests/Support/CommandLineTest.cpp: In constructor '<unnamed>::TempEnvVar::TempEnvVar(const char*, const char*)':
C:/Programming/VersionControl/llvm/unittests/Support/CommandLineTest.cpp:27:5: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const char]'
C:/Programming/VersionControl/llvm/unittests/Support/CommandLineTest.cpp:27:5: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = const char]'"

4) ValueHandleTest

"llvm[2]: Compiling ValueHandleTest.cpp for Debug+Asserts build
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp: In member function 'virtual void<unnamed>::ValueHandle_CallbackVH_CallbackOnRAUW_Test::TestBody()::RecordingVH::allUsesReplacedWith(llvm::Value*)':
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp:277:7: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = llvm::Value]'
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp:277:7: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = llvm::Value]'
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp: In member function 'virtual void<unnamed>::ValueHandle_CallbackVH_CallbackOnRAUW_Test::TestBody()':
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp:285:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = llvm::Value]'
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp:285:3: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = llvm::Value]'
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp: In member function 'virtual void<unnamed>::ValueHandle_CallbackVH_DeletionCanRAUW_Test::TestBody()::RecoveringVH::allUsesReplacedWith(llvm::Value*)':
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp:312:7: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = llvm::Value]'
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp:312:7: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = llvm::Value]'
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp: In member function 'virtual void<unnamed>::ValueHandle_DestroyingOtherVHOnSameValueDoesntBreakIteration_Test::TestBody()':
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp:375:5: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = llvm::Value]'
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp:375:5: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = llvm::Value]'
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp:376:5: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = llvm::Value]'
C:/Programming/VersionControl/llvm/unittests/Support/ValueHandleTest.cpp:376:5: warning: passing NULL to non-pointer argument 3 of 'static testing::AssertionResult testing::internal::EqHelper<true>::Compare(const char*, const char*, const T1&, T2*) [with T1 = int, T2 = llvm::Value]'"

and this error:

1) sample.c

"llvm[4]: Compiling sample.c for Debug+Asserts build
C:/Programming/VersionControl/llvm/projects/sample/lib/sample/sample.c:18:20: fatal error: sample.h: No such file or directory
compilation terminated.
/bin/rm: cannot lstat `/usr/build/llvm/projects/sample/lib/sample/Debug+Asserts/sample.d.tmp': No such file or directory
make[4]: *** [/usr/build/llvm/projects/sample/lib/sample/Debug+Asserts/sample.o] Error 1
make[4]: Leaving directory `/build/llvm/projects/sample/lib/sample'
make[3]: *** [all] Error 1
make[3]: Leaving directory `/build/llvm/projects/sample/lib'
make[2]: *** [all] Error 1
make[2]: Leaving directory `/build/llvm/projects/sample'
make[1]: *** [all] Error 1
make[1]: Leaving directory `/build/llvm/projects'
make: *** [all] Error 1"

Hi Edward,

Building of llvm with gcc-4.5.2-1 gives these warnings:

1) Building FileManagerTest

"llvm[4]: Compiling FileManagerTest.cpp for Debug+Asserts build
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:
In member function 'virtual
void<unnamed>::FileManagerTest_NoVirtualDirectoryExistsBeforeAVirtualFileIsAdded_Test::TestBody()':
C:/Programming/VersionControl/llvm/tools/clang/unittests/Basic/FileManagerTest.cpp:100:3:
warning: passing NULL to non-pointer argument 3 of 'static
testing::AssertionResult
testing::internal::EqHelper<true>::Compare(const char*, const char*,
const T1&, T2*) [with T1 = int, T2 = const clang::DirectoryEntry]'

yes, they are annoying aren't they. They all come from google's unittest
library. I think it is best to fix them upstream at google.

and this error:

1) sample.c

"llvm[4]: Compiling sample.c for Debug+Asserts build
C:/Programming/VersionControl/llvm/projects/sample/lib/sample/sample.c:18:20:
fatal error: sample.h: No such file or directory
compilation terminated.
/bin/rm: cannot lstat
`/usr/build/llvm/projects/sample/lib/sample/Debug+Asserts/sample.d.tmp':
No such file or directory
make[4]: ***
[/usr/build/llvm/projects/sample/lib/sample/Debug+Asserts/sample.o] Error 1
make[4]: Leaving directory `/build/llvm/projects/sample/lib/sample'
make[3]: *** [all] Error 1
make[3]: Leaving directory `/build/llvm/projects/sample/lib'
make[2]: *** [all] Error 1
make[2]: Leaving directory `/build/llvm/projects/sample'
make[1]: *** [all] Error 1
make[1]: Leaving directory `/build/llvm/projects'
make: *** [all] Error 1"

This has already come up on the mailing list. I'm not sure what the resolution
was.

Ciao, Duncan.

I reported this error before a number of weeks ago. I am not an llvm developer and I realize there are other priorities but someone should fix this eventually so the rest of the 'make' can run to conclusion.