Skip to content

32-bit x86 Windows builds fail with sanitizer_common.h(1101): error C2821: first formal parameter to 'operator new' must be 'size_t' #101998

Closed
@zmodem

Description

@zmodem

In a "x86 Native Tools Command Prompt for VS 2019":

git checkout llvmorg-19.1.0-rc2
cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD=X86 -DLLVM_ENABLE_PROJECTS="compiler-rt;clang" ..\llvm
ninja
[...]
[165/4496] Building CXX object projects\compiler-rt\lib\sa...izerCommonSymbolizer.i386.dir\sanitizer_stacktrace.cpp.obj
FAILED: projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.i386.dir/sanitizer_stacktrace.cpp.obj
C:\PROGRA~2\MICROS~2\2019\PROFES~1\VC\Tools\MSVC\1429~1.301\bin\Hostx86\x86\cl.exe  /nologo /TP -DHAVE_RPC_XDR_H=0 -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Iprojects\compiler-rt\lib\sanitizer_common -IC:\src\llvm-project\compiler-rt\lib\sanitizer_common -Iinclude -IC:\src\llvm-project\llvm\include -IC:\src\llvm-project\compiler-rt\lib\sanitizer_common\.. /DWIN32 /D_WINDOWS   /Zc:inline /Zc:preprocessor /Zc:__cplusplus /Oi /bigobj /permissive- -wd4141 -wd4146 -wd4244 -wd4267 -wd4291 -wd4351 -wd4456 -wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4100 -wd4127 -wd4512 -wd4505 -wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 -wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4709 -wd5105 -wd4324 -w14062 -we4238 /Gw /W4 /O2 /Ob2 /DNDEBUG -MT /Oy- /GS- /Zc:threadSafeInit- /Z7 /wd4146 /wd4291 /wd4391 /wd4722 /wd4800 /Zl /GR- -std:c++17 /showIncludes /Foprojects\compiler-rt\lib\sanitizer_common\CMakeFiles\RTSanitizerCommonSymbolizer.i386.dir\sanitizer_stacktrace.cpp.obj /Fdprojects\compiler-rt\lib\sanitizer_common\CMakeFiles\RTSanitizerCommonSymbolizer.i386.dir\ /FS -c C:\src\llvm-project\compiler-rt\lib\sanitizer_common\sanitizer_stacktrace.cpp
C:\src\llvm-project\compiler-rt\lib\sanitizer_common\sanitizer_common.h(1101): error C2821: first formal parameter to 'operator new' must be 'size_t'

Maybe related to c58c827 "[compiler-rt] Simplify and rename of operator_new_size_type"
@arichardson can you take a look?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions