https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122909
--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Kaloian Doganov from comment #5) > C99 _Bool is already being encoded as "B", so the problem with the BOOL type > encoding is avoided there. It seemed proper to use the same "B" character > when _Bool happens to be a bit-field type. I think you misunderstood. if (strcmp (@encode (BOOL), "C")) Will fail since BOOL is just a typedef to char.
