[Bug c++/98360] sizeof in template difference between g++/icc and clang++

2021-11-25 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98360 --- Comment #3 from Andrew Pinski --- GCC, ICC and MSVC all agree that this is valid code and all produce 4. clang is the only one which rejects it. Here is an even more reduced testcase: template struct uintset { T values[1]; struct

[Bug c++/98360] sizeof in template difference between g++/icc and clang++

2020-12-18 Thread ensadc at mailnesia dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98360 --- Comment #2 from ensadc at mailnesia dot com --- Apparently clang++ rewrites `uintset::values` in question to `this->uintset::values`, because it believes that `uintset::values` is valid only if someone specializes `uintset::traits` to make it

[Bug c++/98360] sizeof in template difference between g++/icc and clang++

2020-12-18 Thread ensadc at mailnesia dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98360 ensadc at mailnesia dot com changed: What|Removed |Added CC||ensadc at mailnesia dot com