Skip to content

Exception Code: 0xC00000FD - Fail to compile clang itself (SemaARM.cpp) using itself (same exact version, clang-cl, windows 11) #142530

Open
@Yelmond

Description

@Yelmond
  • stage 1 built with Visual Studio 17.12.4
  • stage 2 built over 3000+ sources without issue before this failure
  • this exact cmake 2-stage setup successfully built llvm 18.1.6 prior

Error Output:

0.      Program arguments: D:\\clang-20.1.6\\dist_llvm_stage1\\bin\\clang-cl.exe
	/nologo
	-TP
	-DCLANG_BUILD_STATIC
	-DGTEST_HAS_RTTI=0
	-DUNICODE
	-D_CRT_NONSTDC_NO_DEPRECATE
	-D_CRT_NONSTDC_NO_WARNINGS
	-D_CRT_SECURE_NO_DEPRECATE
	-D_CRT_SECURE_NO_WARNINGS
	-D_HAS_EXCEPTIONS=0
	-D_SCL_SECURE_NO_DEPRECATE
	-D_SCL_SECURE_NO_WARNINGS
	-D_UNICODE
	-D__STDC_CONSTANT_MACROS
	-D__STDC_FORMAT_MACROS
	-D__STDC_LIMIT_MACROS
	-ID:\\clang-20.1.6\\ClangBuildStage2\\tools\\clang\\lib\\Sema
	-ID:\\clang-20.1.6-src\\clang\\lib\\Sema
	-ID:\\clang-20.1.6-src\\clang\\include
	-ID:\\clang-20.1.6\\ClangBuildStage2\\tools\\clang\\include
	-ID:\\clang-20.1.6\\ClangBuildStage2\\include
	-ID:\\clang-20.1.6-src\\llvm\\include
	/Zc:inline
	/Zc:__cplusplus
	/Oi
	/bigobj
	/permissive-
	-Werror=unguarded-availability-new
	/W4
	-Wextra
	-Wno-unused-parameter
	-Wwrite-strings
	-Wcast-qual
	-Wmissing-field-initializers
	-Wimplicit-fallthrough
	-Wcovered-switch-default
	-Wno-noexcept-type
	-Wnon-virtual-dtor
	-Wdelete-non-virtual-dtor
	-Wsuggest-override
	-Wstring-conversion
	-Wmisleading-indentation
	-Wctad-maybe-unsupported
	/Gw
	-MD
	/EHs-c-
	/GR-
	-std:c++17
	/Fotools\\clang\\lib\\Sema\\CMakeFiles\\obj.clangSema.dir\\SemaARM.cpp.obj
	/Fdtools\\clang\\lib\\Sema\\CMakeFiles\\obj.clangSema.dir\\
	-c
	--
	D:\\\clang-20.1.6-src\\clang\\lib\\Sema\\SemaARM.cpp

1.      D:\clang-20.1.6-src\clang\lib\Sema\SemaARM.cpp:707:1: current parser token 'bool'
2.      D:\clang-20.1.6-src\clang\lib\Sema\SemaARM.cpp:21:1: parsing namespace 'clang'
3.      D:\clang-20.1.6-src\clang\lib\Sema\SemaARM.cpp:679:62: parsing function body 'clang::SemaARM::CheckSVEBuiltinFunctionCall'
Exception Code: 0xC00000FD

cmake cache stage 1:

# This file sets up a CMakeCache for a simple distribution bootstrap build.

# setup runtimes
if ( WIN32 )
	set( CMAKE_CXX_STANDARD 20 CACHE STRING "" )
	set( CMAKE_CXX_FLAGS "-D_SILENCE_ALL_CXX20_DEPRECATION_WARNINGS=1 -wd5054" CACHE STRING "" )
	set( enable_runtimes )
else ()
	set( CMAKE_EXE_LINKER_FLAGS "-Wl,-w" CACHE STRING "" )
	set( CMAKE_CXX_FLAGS "-Wno-deprecated-declarations -Wno-deprecated-enum-enum-conversion -Wno-deprecated-anon-enum-enum-conversion -Wno-ambiguous-reversed-operator -Wno-deprecated-pragma -Wno-deprecated-volatile" CACHE STRING "" )
	set( enable_runtimes "libcxx;libcxxabi" )
endif ()

# Enable LLVM projects and runtimes
set( LLVM_ENABLE_PROJECTS "clang;lld" CACHE STRING "" )
set( LLVM_ENABLE_RUNTIMES "${enable_runtimes}" CACHE STRING "" )

# Only build the native target in stage1 since it is a throwaway build.
set( LLVM_TARGETS_TO_BUILD Native CACHE STRING "" )

# Optimize the stage1 compiler, but don't LTO it because that wastes time.
set( CMAKE_BUILD_TYPE Release CACHE STRING "" )

# Setup vendor-specific settings.
set( PACKAGE_VENDOR HelloWorld CACHE STRING "" )

if ( NOT APPLE )
	# Setting up the stage2 LTO option needs to be done on the stage1 build so that
	# the proper LTO library dependencies can be connected.
	set( BOOTSTRAP_LLVM_ENABLE_LTO ON CACHE BOOL "" )

	# Since LLVM_ENABLE_LTO is ON we need a LTO capable linker
	set( BOOTSTRAP_LLVM_ENABLE_LLD ON CACHE BOOL "" )
endif ()

# Disable more things.
set( LLVM_INCLUDE_TESTS OFF CACHE BOOL "" )
set( LLVM_INCLUDE_EXAMPLES OFF CACHE BOOL "" )
set( LLVM_INCLUDE_BENCHMARKS OFF CACHE BOOL "" )
set( LLVM_INCLUDE_DOCS OFF CACHE BOOL "" )
set( LIBCXXABI_USE_LLVM_UNWINDER OFF CACHE BOOL "" )

cmake cache stage 2:

# This file sets up a CMakeCache for the second stage of a simple distribution
# bootstrap build.

# setup runtimes
if ( WIN32 )
	set( enable_runtimes )
	set( runtimes_distro )
else ()
	set( CMAKE_EXE_LINKER_FLAGS "-Wl,-w" CACHE STRING "" )
	set( CMAKE_CXX_FLAGS "-Wno-deprecated-declarations -Wno-deprecated-enum-enum-conversion -Wno-deprecated-anon-enum-enum-conversion -Wno-ambiguous-reversed-operator -Wno-deprecated-pragma -Wno-deprecated-volatile" CACHE STRING "" )
	set( enable_runtimes "libcxx;libcxxabi;libunwind" )
	set( runtimes_distro "runtimes" )
endif ()

set( LLVM_TARGETS_TO_BUILD Native CACHE STRING "" FORCE ) # Native;X86;AArch64

set( LLVM_ENABLE_PROJECTS "clang;lld;lldb" CACHE STRING "" FORCE )
set( LLVM_ENABLE_RUNTIMES "${enable_runtimes}" CACHE STRING "" FORCE )

if ( WIN32 )
	set( CMAKE_BUILD_TYPE Release CACHE STRING "" FORCE )
	set( CMAKE_DEBUG_POSTFIX d CACHE STRING "" FORCE )
else ()
	set( CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "" FORCE )
	set( CMAKE_C_FLAGS_RELWITHDEBINFO "-O3 -gline-tables-only -DNDEBUG" CACHE STRING "" FORCE )
	set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 -gline-tables-only -DNDEBUG" CACHE STRING "" FORCE )
endif ()

# Disable more things.
set( LLVM_INCLUDE_TESTS OFF CACHE BOOL "" FORCE )
set( LLVM_INCLUDE_EXAMPLES OFF CACHE BOOL "" FORCE )
set( LLVM_INCLUDE_BENCHMARKS OFF CACHE BOOL "" FORCE )
set( LLVM_INCLUDE_DOCS OFF CACHE BOOL "" FORCE )

# Enable stuff.
set( LLDB_USE_SYSTEM_DEBUGSERVER ON CACHE BOOL "" FORCE )

# setup toolchain
set( LLVM_INSTALL_TOOLCHAIN_ONLY OFF CACHE BOOL "" )
set( LLVM_TOOLCHAIN_TOOLS
	dsymutil
	llvm-cov
	llvm-dwarfdump
	llvm-profdata
	llvm-objdump
	llvm-nm
	llvm-size
	llvm-ar
	llvm-ranlib
	CACHE STRING "" FORCE )

set( LLVM_DISTRIBUTION_COMPONENTS
	# Development
	llvm-headers
	llvm-libraries
	clang-headers
	clang-libraries

	# Runtimes
	${runtimes_distro}

	# Toolchain
	lld
	LTO
	clang
	clang-format
	clang-resource-headers
	#builtins
	${LLVM_TOOLCHAIN_TOOLS}

	CACHE STRING "" FORCE )

Metadata

Metadata

Assignees

No one assigned

    Labels

    build-problemclang:frontendLanguage frontend issues, e.g. anything involving "Sema"

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions