r314373 - [NFC] Don't use C++17 standard lib variable template helper traits, instead use ::value.

Faisal Vali via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 28 12:57:03 PDT 2017


Isn't this a C++11 feature though?

I'm not sure what to make of the fact that I haven't gotten any
complaints from the bots in over 12 hrs i think?

Should I just turn it into a comment?

Thanks!

Faisal Vali



On Wed, Sep 27, 2017 at 9:54 PM, James Y Knight <jyknight at google.com> wrote:
> This still doesn't work on some compilers, because
> std::is_trivially_copyable isn't available:
> http://lab.llvm.org:8011/builders/aosp-O3-polly-before-vectorizer-unprofitable/builds/265/steps/build/logs/stdio
>
> On Wed, Sep 27, 2017 at 10:00 PM, Faisal Vali via cfe-commits
> <cfe-commits at lists.llvm.org> wrote:
>>
>> Author: faisalv
>> Date: Wed Sep 27 19:00:40 2017
>> New Revision: 314373
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=314373&view=rev
>> Log:
>> [NFC] Don't use C++17 standard lib variable template helper traits,
>> instead use ::value.
>>
>> Modified:
>>     cfe/trunk/lib/Lex/MacroArgs.cpp
>>
>> Modified: cfe/trunk/lib/Lex/MacroArgs.cpp
>> URL:
>> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Lex/MacroArgs.cpp?rev=314373&r1=314372&r2=314373&view=diff
>>
>> ==============================================================================
>> --- cfe/trunk/lib/Lex/MacroArgs.cpp (original)
>> +++ cfe/trunk/lib/Lex/MacroArgs.cpp Wed Sep 27 19:00:40 2017
>> @@ -62,7 +62,7 @@ MacroArgs *MacroArgs::create(const Macro
>>
>>    // Copy the actual unexpanded tokens to immediately after the result
>> ptr.
>>    if (!UnexpArgTokens.empty()) {
>> -    static_assert(std::is_trivially_copyable_v<Token>,
>> +    static_assert(std::is_trivially_copyable<Token>::value,
>>                    "assume trivial copyability if copying into the "
>>                    "uninitialized array (as opposed to reusing a cached "
>>                    "MacroArgs)");
>> @@ -96,7 +96,7 @@ MacroArgs *MacroArgs::deallocate() {
>>    // Run the dtor to deallocate the vectors.
>>    this->~MacroArgs();
>>    // Release the memory for the object.
>> -  static_assert(std::is_trivially_destructible_v<Token>,
>> +  static_assert(std::is_trivially_destructible<Token>::value,
>>                  "assume trivially destructible and forego destructors");
>>    free(this);
>>
>>
>>
>> _______________________________________________
>> cfe-commits mailing list
>> cfe-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
>


More information about the cfe-commits mailing list