[llvm] r328073 - Fix the actual user of DataTypes.h in llvm-c to avoid the circular dependency

Jonas Devlieghere via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 21 02:24:27 PDT 2018


Hi David,

Our second stage bots are still failing with your follow-up commit. 

FAILED: lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamError.cpp.o 
/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/host-compiler/bin/clang++  -DGTEST_HAS_RTTI=0 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/Support -I/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/lib/Support -I/usr/include/libxml2 -Iinclude -I/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -std=c++11 -fmodules -fmodules-cache-path=/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/clang-build/module.cache -fcxx-modules -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fcolor-diagnostics -fprofile-instr-generate='/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/clang-build/profiles/%6m.profraw' -fcoverage-mapping -O3 -DNDEBUG    -fno-exceptions -fno-rtti -MD -MT lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamError.cpp.o -MF lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamError.cpp.o.d -o lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamError.cpp.o -c /Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/lib/Support/BinaryStreamError.cpp
While building module 'LLVM_Utils' imported from /Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/lib/Support/BinaryStreamError.cpp:10:
While building module 'LLVM_C' imported from /Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include/llvm/Support/MemoryBuffer.h:17:
In file included from <module-includes>:1:
In file included from /Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include/llvm-c/./Support.h:18:
/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include/llvm-c/Types.h:17:10: fatal error: cyclic dependency in module 'LLVM_Utils': LLVM_Utils -> LLVM_C -> LLVM_Utils
#include "llvm/Support/DataTypes.h"
         ^
While building module 'LLVM_Utils' imported from /Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/lib/Support/BinaryStreamError.cpp:10:
In file included from <module-includes>:89:
In file included from /Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include/llvm/Support/BinaryByteStream.h:20:
/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include/llvm/Support/MemoryBuffer.h:17:10: fatal error: could not build module 'LLVM_C'
#include "llvm-c/Types.h"
 ~~~~~~~~^~~~~~~~~~~~~~~~
/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/lib/Support/BinaryStreamError.cpp:10:10: fatal error: could not build module 'LLVM_Utils'
#include "llvm/Support/BinaryStreamError.h"
 ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 errors generated.

In case you’re still awake, can you have a look before I have to revert these again?

The two affected (public) bots are:
http://green.lab.llvm.org/green/job/clang-stage2-coverage-R/
http://green.lab.llvm.org/green/job/clang-stage2-configure-Rlto/

Cheers,
Jonas

> On Mar 21, 2018, at 4:07 AM, David Blaikie via llvm-commits <llvm-commits at lists.llvm.org> wrote:
> 
> Author: dblaikie
> Date: Tue Mar 20 21:07:07 2018
> New Revision: 328073
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=328073&view=rev
> Log:
> Fix the actual user of DataTypes.h in llvm-c to avoid the circular dependency
> 
> (follow-up to r328065)
> 
> Modified:
>    llvm/trunk/include/llvm-c/Support.h
> 
> Modified: llvm/trunk/include/llvm-c/Support.h
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm-c/Support.h?rev=328073&r1=328072&r2=328073&view=diff
> ==============================================================================
> --- llvm/trunk/include/llvm-c/Support.h (original)
> +++ llvm/trunk/include/llvm-c/Support.h Tue Mar 20 21:07:07 2018
> @@ -14,8 +14,8 @@
> #ifndef LLVM_C_SUPPORT_H
> #define LLVM_C_SUPPORT_H
> 
> +#include "llvm-c/DataTypes.h"
> #include "llvm-c/Types.h"
> -#include "llvm/Support/DataTypes.h"
> 
> #ifdef __cplusplus
> extern "C" {
> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits



More information about the llvm-commits mailing list