[libcxx] r206805 - Use compiler intrinsic __is_constructible if available

İsmail Dönmez ismail at donmez.ws
Thu Apr 24 02:44:06 PDT 2014


Hi,


On Tue, Apr 22, 2014 at 1:30 AM, Marshall Clow <mclow.lists at gmail.com>wrote:

> Author: marshall
> Date: Mon Apr 21 17:30:32 2014
> New Revision: 206805
>
> URL: http://llvm.org/viewvc/llvm-project?rev=206805&view=rev
> Log:
> Use compiler intrinsic __is_constructible if available
>
> Modified:
>     libcxx/trunk/include/type_traits
>

This breaks the llvm compilation (in stage2 hence clang is the compiler
here) for me on Linux/x86-64:


[  546s] FAILED: /home/abuild/rpmbuild/BUILD/llvm/stage1/bin/clang++
-DGTEST_HAS_RTTI=0 -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS
-D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -stdlib=libc++ -fPIC
-fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings
-Wmissing-field-initializers -pedantic -Wno-long-long
-Wcovered-switch-default -Wnon-virtual-dtor -std=c++11 -fcolor-diagnostics
-ffunction-sections -fdata-sections -O2 -g -DNDEBUG -Iunittests/ADT
-I../unittests/ADT -Iinclude -I../include
-I../utils/unittest/googletest/include    -Wno-variadic-macros
-fno-exceptions -fno-rtti -MMD -MT
unittests/ADT/CMakeFiles/ADTTests.dir/MakeUniqueTest.cpp.o -MF
unittests/ADT/CMakeFiles/ADTTests.dir/MakeUniqueTest.cpp.o.d -o
unittests/ADT/CMakeFiles/ADTTests.dir/MakeUniqueTest.cpp.o -c
../unittests/ADT/MakeUniqueTest.cpp
[  546s] 0  clang-3.5       0x0000000000a76d95
llvm::sys::PrintStackTrace(_IO_FILE*) + 37
[  546s] 1  clang-3.5       0x0000000000a77143
[  546s] 2  libpthread.so.0 0x00007f6c564c0a10
[  546s] 3  clang-3.5       0x00000000014c07ec
clang::InitializationSequence::InitializeFrom(clang::Sema&,
clang::InitializedEntity const&, clang::InitializationKind const&,
llvm::MutableArrayRef<clang::Expr*>, bool) + 92
[  546s] 4  clang-3.5       0x00000000014c078d
clang::InitializationSequence::InitializationSequence(clang::Sema&,
clang::InitializedEntity const&, clang::InitializationKind const&,
llvm::MutableArrayRef<clang::Expr*>, bool) + 429
[  546s] 5  clang-3.5       0x0000000001498516
clang::Sema::BuildTypeTrait(clang::TypeTrait, clang::SourceLocation,
llvm::ArrayRef<clang::TypeSourceInfo*>, clang::SourceLocation) + 2550
[  546s] 6  clang-3.5       0x00000000015c7803
[  546s] 7  clang-3.5       0x00000000015ba688
[  546s] 8  clang-3.5       0x00000000015bdcea
[  546s] 9  clang-3.5       0x00000000015be918
[  546s] 10 clang-3.5       0x00000000015b34a6
[  546s] 11 clang-3.5       0x00000000015b1bcf
[  546s] 12 clang-3.5       0x00000000015b6e29
clang::Sema::SubstBaseSpecifiers(clang::CXXRecordDecl*,
clang::CXXRecordDecl*, clang::MultiLevelTemplateArgumentList const&) + 809
[  546s] 13 clang-3.5       0x00000000015b7516
clang::Sema::InstantiateClass(clang::SourceLocation, clang::CXXRecordDecl*,
clang::CXXRecordDecl*, clang::MultiLevelTemplateArgumentList const&,
clang::TemplateSpecializationKind, bool) + 758
[  546s] 14 clang-3.5       0x00000000015b8e95
clang::Sema::InstantiateClassTemplateSpecialization(clang::SourceLocation,
clang::ClassTemplateSpecializationDecl*, clang::TemplateSpecializationKind,
bool) + 1781
[  546s] 15 clang-3.5       0x00000000015fd26e
clang::Sema::RequireCompleteTypeImpl(clang::SourceLocation,
clang::QualType, clang::Sema::TypeDiagnoser&) + 734
[  546s] 16 clang-3.5       0x00000000015fced0
clang::Sema::RequireCompleteType(clang::SourceLocation, clang::QualType,
clang::Sema::TypeDiagnoser&) + 16
[  546s] 17 clang-3.5       0x0000000001307851
clang::Sema::RequireCompleteDeclContext(clang::CXXScopeSpec&,
clang::DeclContext*) + 273
[  546s] 18 clang-3.5       0x000000000143feee
clang::Sema::BuildQualifiedDeclarationNameExpr(clang::CXXScopeSpec&,
clang::DeclarationNameInfo const&, bool) + 62
[  546s] 19 clang-3.5       0x00000000015c7c56
[  546s] 20 clang-3.5       0x00000000015ba040
[  546s] 21 clang-3.5       0x00000000015bdcea
[  546s] 22 clang-3.5       0x00000000015be918
[  546s] 23 clang-3.5       0x00000000015b34a6
[  546s] 24 clang-3.5       0x00000000015b1bcf
[  546s] 25 clang-3.5       0x00000000015b6e29
clang::Sema::SubstBaseSpecifiers(clang::CXXRecordDecl*,
clang::CXXRecordDecl*, clang::MultiLevelTemplateArgumentList const&) + 809
[  546s] 26 clang-3.5       0x00000000015b7516
clang::Sema::InstantiateClass(clang::SourceLocation, clang::CXXRecordDecl*,
clang::CXXRecordDecl*, clang::MultiLevelTemplateArgumentList const&,
clang::TemplateSpecializationKind, bool) + 758
[  546s] 27 clang-3.5       0x00000000015b8e95
clang::Sema::InstantiateClassTemplateSpecialization(clang::SourceLocation,
clang::ClassTemplateSpecializationDecl*, clang::TemplateSpecializationKind,
bool) + 1781
[  546s] 28 clang-3.5       0x00000000015fd26e
clang::Sema::RequireCompleteTypeImpl(clang::SourceLocation,
clang::QualType, clang::Sema::TypeDiagnoser&) + 734
[  546s] 29 clang-3.5       0x00000000015fced0
clang::Sema::RequireCompleteType(clang::SourceLocation, clang::QualType,
clang::Sema::TypeDiagnoser&) + 16
[  546s] 30 clang-3.5       0x0000000001307851
clang::Sema::RequireCompleteDeclContext(clang::CXXScopeSpec&,
clang::DeclContext*) + 273
[  546s] 31 clang-3.5       0x000000000143feee
clang::Sema::BuildQualifiedDeclarationNameExpr(clang::CXXScopeSpec&,
clang::DeclarationNameInfo const&, bool) + 62
[  546s] 32 clang-3.5       0x00000000015c7c56
[  546s] 33 clang-3.5       0x00000000015ba040
[  546s] 34 clang-3.5       0x00000000015c6663
[  546s] 35 clang-3.5       0x00000000015ba47b
[  546s] 36 clang-3.5       0x00000000015b9ba1
clang::Sema::SubstExpr(clang::Expr*, clang::MultiLevelTemplateArgumentList
const&) + 65
[  546s] 37 clang-3.5       0x00000000015dacfc
[  546s] 38 clang-3.5       0x00000000015da58b
clang::Sema::InstantiateExceptionSpec(clang::SourceLocation,
clang::FunctionDecl*) + 539
[  546s] 39 clang-3.5       0x0000000001430129
clang::Sema::ResolveExceptionSpec(clang::SourceLocation,
clang::FunctionProtoType const*) + 121
[  546s] 40 clang-3.5       0x000000000144924e
clang::Sema::MarkFunctionReferenced(clang::SourceLocation,
clang::FunctionDecl*) + 1086
[  546s] 41 clang-3.5       0x00000000013f56eb
clang::Sema::BuildCXXConstructExpr(clang::SourceLocation, clang::QualType,
clang::CXXConstructorDecl*, llvm::MutableArrayRef<clang::Expr*>, bool,
bool, bool, unsigned int, clang::SourceRange) + 107
[  546s] 42 clang-3.5       0x00000000014cb35f
[  546s] 43 clang-3.5       0x00000000014c51a7
clang::InitializationSequence::Perform(clang::Sema&,
clang::InitializedEntity const&, clang::InitializationKind const&,
llvm::MutableArrayRef<clang::Expr*>, clang::QualType*) + 5687
[  546s] 44 clang-3.5       0x0000000001491862
clang::Sema::BuildCXXNew(clang::SourceRange, bool, clang::SourceLocation,
llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation,
clang::SourceRange, clang::QualType, clang::TypeSourceInfo*, clang::Expr*,
clang::SourceRange, clang::Expr*, bool) + 6034
[  546s] 45 clang-3.5       0x00000000015c1619
[  546s] 46 clang-3.5       0x00000000015b9d90
[  546s] 47 clang-3.5       0x00000000015babff
[  546s] 48 clang-3.5       0x00000000015baed9
[  546s] 49 clang-3.5       0x00000000015c1fc7
[  546s] 50 clang-3.5       0x00000000015b9e3c
[  546s] 51 clang-3.5       0x00000000015cb8dd
[  546s] 52 clang-3.5       0x00000000015c7e81
[  546s] 53 clang-3.5       0x00000000015b9791
clang::Sema::SubstStmt(clang::Stmt*, clang::MultiLevelTemplateArgumentList
const&) + 65
[  546s] 54 clang-3.5       0x00000000015db557
clang::Sema::InstantiateFunctionDefinition(clang::SourceLocation,
clang::FunctionDecl*, bool, bool) + 1863
[  546s] 55 clang-3.5       0x00000000015dc4c1
clang::Sema::PerformPendingInstantiations(bool) + 433
[  546s] 56 clang-3.5       0x00000000012f4e82
clang::Sema::ActOnEndOfTranslationUnit() + 498
[  546s] 57 clang-3.5       0x000000000119b708
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&) +
168
[  546s] 58 clang-3.5       0x0000000001198c46
clang::ParseAST(clang::Sema&, bool, bool) + 454
[  546s] 59 clang-3.5       0x0000000000ee9ab1
clang::CodeGenAction::ExecuteAction() + 65
[  546s] 60 clang-3.5       0x0000000000bbb3f9
clang::FrontendAction::Execute() + 57
[  546s] 61 clang-3.5       0x0000000000b924dd
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 829
[  546s] 62 clang-3.5       0x0000000000c22e14
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 3332
[  546s] 63 clang-3.5       0x000000000063b01a cc1_main(char const**, char
const**, char const*, void*) + 554
[  546s] 64 clang-3.5       0x000000000063775e main + 1086
[  546s] 65 libc.so.6       0x00007f6c556feb15 __libc_start_main + 245
[  546s] 66 clang-3.5       0x00000000006371cf
[  546s] Stack dump:
[  546s] 0. Program arguments:
/home/abuild/rpmbuild/BUILD/llvm/stage1/bin/clang-3.5 -cc1 -triple
x86_64-suse-linux -emit-obj -disable-free -disable-llvm-verifier
-main-file-name MakeUniqueTest.cpp -mrelocation-model pic -pic-level 2
-fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables
-fuse-init-array -target-cpu x86-64 -momit-leaf-frame-pointer -g
-ffunction-sections -fdata-sections -coverage-file
/home/abuild/rpmbuild/BUILD/llvm/stage2/unittests/ADT/CMakeFiles/ADTTests.dir/MakeUniqueTest.cpp.o
-resource-dir
/home/abuild/rpmbuild/BUILD/llvm/stage1/bin/../lib64/clang/3.5.0
-dependency-file
unittests/ADT/CMakeFiles/ADTTests.dir/MakeUniqueTest.cpp.o.d -MT
unittests/ADT/CMakeFiles/ADTTests.dir/MakeUniqueTest.cpp.o -D
GTEST_HAS_RTTI=0 -D NDEBUG -D _GNU_SOURCE -D __STDC_CONSTANT_MACROS -D
__STDC_FORMAT_MACROS -D __STDC_LIMIT_MACROS -D NDEBUG -I unittests/ADT -I
../unittests/ADT -I include -I ../include -I
../utils/unittest/googletest/include -internal-isystem /usr/include/c++/v1
-internal-isystem /usr/local/include -internal-isystem
/home/abuild/rpmbuild/BUILD/llvm/stage1/bin/../lib64/clang/3.5.0/include
-internal-externc-isystem /include -internal-externc-isystem /usr/include
-O2 -Wall -W -Wno-unused-parameter -Wwrite-strings
-Wmissing-field-initializers -Wno-long-long -Wcovered-switch-default
-Wnon-virtual-dtor -Wno-variadic-macros -pedantic -std=c++11
-fdeprecated-macro -fdebug-compilation-dir
/home/abuild/rpmbuild/BUILD/llvm/stage2 -ferror-limit 19 -fmessage-length 0
-fvisibility-inlines-hidden -mstackrealign -fno-rtti -fobjc-runtime=gcc
-fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops
-vectorize-slp -o
unittests/ADT/CMakeFiles/ADTTests.dir/MakeUniqueTest.cpp.o -x c++
../unittests/ADT/MakeUniqueTest.cpp
[  546s] 1. <eof> parser at end of file
[  546s] 2. ../include/llvm/ADT/STLExtras.h:268:1: instantiating function
definition 'make_unique'
[  546s] clang-3.5: error: unable to execute command: Segmentation fault
[  546s] clang-3.5: error: clang frontend command failed due to signal (use
-v to see invocation)
[  546s] clang version 3.5.0 (trunk 207088)
[  546s] Target: x86_64-suse-linux
[  546s] Thread model: posix
[  546s] clang-3.5: note: diagnostic msg: PLEASE submit a bug report to
http://llvm.org/bugs/ and include the crash backtrace, preprocessed source,
and associated run script.
[  546s] clang-3.5: note: diagnostic msg:
[  546s] ********************
[  546s]
[  546s] PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
[  546s] Preprocessed source(s) and associated run script(s) are located at:
[  546s] clang-3.5: note: diagnostic msg: /tmp/MakeUniqueTest-ff6298.cpp
[  546s] clang-3.5: note: diagnostic msg: /tmp/MakeUniqueTest-ff6298.sh
[  546s] clang-3.5: note: diagnostic msg:
[  546s]
[  546s] ********************
[  549s] ninja: build stopped: subcommand failed.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140424/3c1ad886/attachment.html>


More information about the cfe-commits mailing list