From 43dfa40b5666d763cf14709ce3ce0a8a9da1eea6 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 24 Jul 2026 21:47:09 +0000 Subject: [PATCH 1/3] Initial plan From f0c915c89f4be3487135da794dbb94d939950c8f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 24 Jul 2026 22:30:34 +0000 Subject: [PATCH 2/3] Enable CoreCLR contracts on Linux x64 Co-authored-by: davidwrighton <10779849+davidwrighton@users.noreply.github.com> --- eng/native/configurecompiler.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/eng/native/configurecompiler.cmake b/eng/native/configurecompiler.cmake index 40e9e75242e267..7f6e96fbc3f2a0 100644 --- a/eng/native/configurecompiler.cmake +++ b/eng/native/configurecompiler.cmake @@ -818,8 +818,10 @@ endif(CLR_CMAKE_HOST_UNIX OR CLR_CMAKE_HOST_WASI) if(CLR_CMAKE_TARGET_UNIX) add_compile_definitions($<$>>:TARGET_UNIX>) - # Contracts are disabled on UNIX. - add_definitions(-DDISABLE_CONTRACTS) + if(NOT (CLR_CMAKE_RUNTIME_CORECLR AND CLR_CMAKE_TARGET_LINUX AND CLR_CMAKE_TARGET_ARCH_AMD64)) + # Contracts are disabled on UNIX except CoreCLR on Linux x64. + add_definitions(-DDISABLE_CONTRACTS) + endif() if(CLR_CMAKE_TARGET_APPLE) add_compile_definitions($<$>>:TARGET_APPLE>) endif() From cbea1d971b1c47cb6b1cb054a18c4c8feb598a57 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 27 Jul 2026 21:56:43 +0000 Subject: [PATCH 3/3] Enable CoreCLR contract opt-in for Linux Arm64 and macOS Arm64 Co-authored-by: davidwrighton <10779849+davidwrighton@users.noreply.github.com> --- eng/native/configurecompiler.cmake | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/eng/native/configurecompiler.cmake b/eng/native/configurecompiler.cmake index 7f6e96fbc3f2a0..eae64d450ff178 100644 --- a/eng/native/configurecompiler.cmake +++ b/eng/native/configurecompiler.cmake @@ -818,8 +818,14 @@ endif(CLR_CMAKE_HOST_UNIX OR CLR_CMAKE_HOST_WASI) if(CLR_CMAKE_TARGET_UNIX) add_compile_definitions($<$>>:TARGET_UNIX>) - if(NOT (CLR_CMAKE_RUNTIME_CORECLR AND CLR_CMAKE_TARGET_LINUX AND CLR_CMAKE_TARGET_ARCH_AMD64)) - # Contracts are disabled on UNIX except CoreCLR on Linux x64. + if(NOT ( + CLR_CMAKE_RUNTIME_CORECLR AND + ( + (CLR_CMAKE_TARGET_LINUX AND (CLR_CMAKE_TARGET_ARCH_AMD64 OR CLR_CMAKE_TARGET_ARCH_ARM64)) OR + (CLR_CMAKE_TARGET_OSX AND CLR_CMAKE_TARGET_ARCH_ARM64) + ) + )) + # Contracts are disabled on UNIX except CoreCLR on Linux x64/Arm64 and macOS Arm64. add_definitions(-DDISABLE_CONTRACTS) endif() if(CLR_CMAKE_TARGET_APPLE)