[libcxx] r206805 - Use compiler intrinsic __is_constructible if available
Alp Toker
alp at nuanti.com
Thu Jul 17 07:34:34 PDT 2014
On 17/07/2014 16:29, İsmail Dönmez wrote:
> Hi,
>
> Just tried trunk and its still broken wrt. __is_constructible
The reduced test case doesn't include uses of __is_constructable or any
other type trait primitive.
I can confirm though that it does crash somewhere in parameter pack
handling, which is used to pass types to the built-in:
Assertion failed: (Replacement.isCanonical() && "replacement types must
always be canonical"), function getSubstTemplateTypeParmType, file
/Users/alp/Projects/llvm-work/upstream/clang/lib/AST/ASTContext.cpp,
line 3040.
6 libclangAST.dylib 0x000000010ee7d210
clang::ASTContext::getSubstTemplateTypeParmPackType(clang::TemplateTypeParmType
const*, clang::TemplateArgument const&) + 0
7 libclangSema.dylib 0x000000010e9b1dab
clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 6595
8 libclangSema.dylib 0x000000010e9b0144
clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*)
+ 200
9 libclangSema.dylib 0x000000010e9bc053
clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateArgument(clang::TemplateArgumentLoc
const&, clang::TemplateArgumentLoc&) + 119
>
> ismail
>
>
>
> On Tue, Apr 29, 2014 at 3:51 PM, İsmail Dönmez <ismail at donmez.ws
> <mailto:ismail at donmez.ws>> wrote:
>
> Hi,
>
> Attached is a testcase with unrelated errors in it. I am still
> trying to reduce a non-error version but if this one works cool.
>
> Get latest libcxx and compile with clang++ -std=c++11 -c testcase.ii
>
>
>
> On Fri, Apr 25, 2014 at 9:49 PM, Richard Smith <metafoo at gmail.com
> <mailto:metafoo at gmail.com>> wrote:
>
> Any chance you could produce a reduced testcase and file a bug
> against Clang? =)
>
>
> On Fri Apr 25 2014 at 11:37:56 AM, İsmail Dönmez
> <ismail at donmez.ws <mailto:ismail at donmez.ws>> wrote:
>
> Hi,
>
>
> On Fri, Apr 25, 2014 at 6:09 PM, Marshall Clow
> <mclow.lists at gmail.com <mailto:mclow.lists at gmail.com>> wrote:
>
>
> On Apr 24, 2014, at 2:44 AM, İsmail Dönmez
> <ismail at donmez.ws <mailto:ismail at donmez.ws>> wrote:
>
>> Hi,
>>
>>
>> On Tue, Apr 22, 2014 at 1:30 AM, Marshall Clow
>> <mclow.lists at gmail.com
>> <mailto: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:
>
> Sorry; was in meetings all day yesterday.
> Looks like a bug in the __is_constructible code in clang.
>
> As a workaround (and a check to make sure that’s what
> it is), would you please change (in type_traits)
>
> #if __has_feature(is_constructible)
> to
> #if 0
>
> and let me know if that fixes the crash?
>
>
> This indeed fixes the crash.
>
> Regards.
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu <mailto:cfe-commits at cs.uiuc.edu>
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
>
>
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
--
http://www.nuanti.com
the browser experts
More information about the cfe-commits
mailing list