[PATCH] D45383: Limit types of builtins that can be redeclared.

Saleem Abdulrasool via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Apr 14 15:39:02 PDT 2018


compnerd added a comment.

Snipping bits from `va_defs.h`:

  #elif defined _M_ARM64
  
      void __cdecl __va_start(va_list*, ...);
  
      #define __crt_va_start_a(ap,v) ((void)(__va_start(&ap, _ADDRESSOF(v), _SLOTSIZEOF(v), __alignof(v), _ADDRESSOF(v))))
  ...
  
  #elif defined _M_X64
  
      void __cdecl __va_start(va_list* , ...);
  
      #define __crt_va_start_a(ap, x) ((void)(__va_start(&ap, x)))
  
  ...

This looks like a declaration to me.  Although, this is in system headers, so maybe we can ignore it by means of the system header suppression?  The minor problem with that is that clang-cl (and the clang driver with the windows triple) do not support `-isystem` or `-isysroot` or `--sysroot` arguments.  I suppose that as long as we expose the cc1 option (I imagine that clang-cl will pass the system paths appropriately), that is one option.


https://reviews.llvm.org/D45383





More information about the cfe-commits mailing list