[PATCH] D57914: [Driver] Allow enum SanitizerOrdinal to represent more than 64 different sanitizer checks, NFC.

Bruno Ricci via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Feb 21 07:20:54 PST 2019


riccibruno added a comment.

In D57914#1405665 <https://reviews.llvm.org/D57914#1405665>, @pgousseau wrote:

> In D57914#1405615 <https://reviews.llvm.org/D57914#1405615>, @riccibruno wrote:
>
> > I think what you would really want to do is mark the masks as `inline constexpr`, but sadly inline variables are C++17 only. I have seen some ways to emulate inline variables but I am not sure whether it is worth doing so in this case.
>
>
> Yes thanks for the advice.
>  I have tried moving the definitions to the cpp file but ran into initialization order fiasco issue because of SanitizerArgs.cpp global definitions.
>  If using a constexpr SanitizerMask ctor then that would work around the initialization fiasco issue hopefully?
>  Although I am not having much luck using constexpr ctor in VS2015 because of the array member, so might have to revert back to lo/hi mask members?


I would prefer to avoid doing this. What is the problem with `constexpr` ?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D57914/new/

https://reviews.llvm.org/D57914





More information about the cfe-commits mailing list