https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66624
--- Comment #7 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- markus@x4 ~ % clang++ -fsanitize=undefined -O0 -g t.cc markus@x4 ~ % gdb ./a.out Reading symbols from ./a.out...done. (gdb) b __ubsan::ScopedReport::~ScopedReport Breakpoint 1 at 0x41f5c0: file /home/markus/llvm/projects/compiler-rt/lib/ubsan/ubsan_diag.cc, line 364. (gdb) run Starting program: /home/markus/a.out [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/libthread_db.so.1". /usr/lib64/gcc/x86_64-pc-linux-gnu/5.2.1/include/g++-v5/bits/ios_base.h:102:24: runtime error: load of value 4294967221, which is not a valid value for type 'std::_Ios_Fmtflags' Breakpoint 1, __ubsan::ScopedReport::~ScopedReport (this=0x7fffffffdec0, __in_chrg=<optimized out>) at /home/markus/llvm/projects/compiler-rt/lib/ubsan/ubsan_diag.cc:364 364 ScopedReport::~ScopedReport() { (gdb) up #1 0x0000000000420a5f in handleLoadInvalidValue (Data=<optimized out>, Val=4294967221, Opts=...) at /home/markus/llvm/projects/compiler-rt/lib/ubsan/ubsan_handlers.cc:375 375 : ErrorType::InvalidEnumLoad); (gdb) up #2 0x0000000000422dd3 in __ubsan::__ubsan_handle_load_invalid_value (Data=<optimized out>, Val=<optimized out>) at /home/markus/llvm/projects/compiler-rt/lib/ubsan/ubsan_handlers.cc:385 385 handleLoadInvalidValue(Data, Val, Opts); (gdb) up #3 0x0000000000425cad in std::operator&= (__a=@0xf09ec0: 4098, __b=4294967221) at /usr/lib64/gcc/x86_64-pc-linux-gnu/5.2.1/include/g++-v5/bits/ios_base.h:102 102 { return __a = __a & __b; } (gdb) up #4 0x0000000000425a21 in std::ios_base::setf (this=0xf09ea8 <std::cout+8>, __fmtfl=std::_S_hex, __mask=std::_S_basefield) at /usr/lib64/gcc/x86_64-pc-linux-gnu/5.2.1/include/g++-v5/bits/ios_base.h:660 660 _M_flags &= ~__mask; (gdb) p __mask $1 = std::_S_basefield (gdb)