Open
Description
template <class T>
using vec __attribute__((__ext_vector_type__(4))) = T;
void use(vec<bool> val) {}
int main() {
auto val = vec<int>{0, 1, 2, 3};
use(__builtin_convertvector(val, vec<bool>));
}
causes msan to fail with
==1==WARNING: MemorySanitizer: use-of-uninitialized-value
#0 0x55d07d68881c in main /app/example.cpp:9:3
#1 0x7f56abc29d8f (/lib/x86_64-linux-gnu/libc.so.6+0x29d8f) (BuildId: c289da5071a3399de893d2af81d6a30c62646e1e)
#2 0x7f56abc29e3f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e3f) (BuildId: c289da5071a3399de893d2af81d6a30c62646e1e)
#3 0x55d07d5ee2f4 in _start (/app/output.s+0x322f4)
SUMMARY: MemorySanitizer: use-of-uninitialized-value /app/example.cpp:9:3 in main
Exiting