https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81066
--- Comment #7 from Khem Raj <raj.khem at gmail dot com> --- (In reply to Florian Weimer from comment #6) > (In reply to Khem Raj from comment #5) > > +#ifndef __stack_t_defined > > +struct stack_t; > > +#endif > > Where does __stack_t_defined come from? If this is the definition from the > glibc headers, that's really brittle because it's totally internal. infact it is from bits/types/stack_t.h so you are right. sanitizers redefine a lot of stuff from libc. So we can not include signal.h without such quirks