Update: Using C++26 with contracts enabled
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
add_library(course_contract_support STATIC contract_handler.cpp)
|
||||
target_compile_features(course_contract_support PUBLIC cxx_std_26)
|
||||
set_target_properties(course_contract_support PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND COURSE_ENABLE_CONTRACTS)
|
||||
target_compile_options(course_contract_support PRIVATE -fcontracts)
|
||||
target_link_options(course_contract_support PRIVATE -fcontracts)
|
||||
endif()
|
||||
@@ -0,0 +1,6 @@
|
||||
#include <contracts>
|
||||
#include <cstdlib>
|
||||
|
||||
void handle_contract_violation(const std::contracts::contract_violation&) {
|
||||
std::abort();
|
||||
}
|
||||
Reference in New Issue
Block a user