On Mon, Mar 11, 2019 at 01:16:07PM -0400, Tom Callaway wrote: > I spent some time this weekend trying to get Chromium 72 building on > Fedora, but I kept running into a C++ issue that I was not able to resolve. > This happened with gcc-9.0.1-0.8.fc30.x86_64 and gcc-8.3.1-2.fc29.x86_64. Can you please provide preprocessed source + g++ command line options, from the snippets it is hard to see what's going on. >From the description it seems maybe like: template <int N> struct S { static constexpr int a[2] = { 1, 2 }; }; static_assert (&S<0>::a[1] != nullptr); which g++ accepts for -std=c++{11,14} but rejects for -std=c++{17,2a} when S<0>::a is an inline variable. I think we have a similar http://gcc.gnu.org/PR89074 . The middle-end punts here and doesn't optimize the != NULL to true because it is address of a comdat variable and thus it in the end could come up from any other TU. Though perhaps in these cases the standard gives us some guarantees. Jakub _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx