manojgupta added a comment.

Hmm, looking deeper, gdb (actually binutils), is doing something weird.

https://github.com/bminor/binutils-gdb/blob/master/include/safe-ctype.h

  /* Prevent the users of safe-ctype.h from accidently using the routines
     from ctype.h.  Initially, the approach was to produce an error when
     detecting that ctype.h has been included.  But this was causing
     trouble as ctype.h might get indirectly included as a result of
     including another system header (for instance gnulib's stdint.h).
     So we include ctype.h here and then immediately redefine its macros.  */
  
  #include <ctype.h>
  #undef isalpha
  #define isalpha(c) do_not_use_isalpha_with_safe_ctype
  #undef isalnum
  #define isalnum(c) do_not_use_isalnum_with_safe_ctype
  <snip>

So any use of isupper/islower etc will cause an error.
Why this patch is triggering it:
It adds an include of #include <__format/formatter_integral.h> which ends up 
including <locale> which has  internal definitions of isupper/islower causing 
clang to complain.
Any suggestions on what would be the right fix here?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D144331/new/

https://reviews.llvm.org/D144331

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to