diff --git a/.github/workflows/disabled-workflows/windows-ci.yml b/.github/workflows/windows-ci.yml similarity index 100% rename from .github/workflows/disabled-workflows/windows-ci.yml rename to .github/workflows/windows-ci.yml diff --git a/include/hsm/details/sm.h b/include/hsm/details/sm.h index 20b9a62..de476bd 100644 --- a/include/hsm/details/sm.h +++ b/include/hsm/details/sm.h @@ -192,7 +192,7 @@ template class sm { return ProcessEventResult::AllGuardsFailed; } - process_anonymous_transitions(); + process_anonymous_transitions(noneEvent {}); return ProcessEventResult::EventProcessed; } @@ -205,7 +205,7 @@ template class sm { } } - auto process_anonymous_transitions() + template auto process_anonymous_transitions(Event&& event) { if constexpr (has_anonymous_transition(rootState)) { while (true) { @@ -213,8 +213,6 @@ template class sm { const auto currentRegions = current_regions(); for (Region region = 0; region < currentRegions; region++) { - - auto event = noneEvent {}; // NOLINTNEXTLINE(cppcoreguidelines-pro-bounds-constant-array-index) auto& results = get_dispatch_table_entry(event, region); diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 624c01d..363e6d5 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -75,7 +75,6 @@ add_executable( integration/transition_postfix_dsl.cpp integration/transition_prefix_dsl.cpp integration/no_action.cpp - integration/state_data_members.cpp integration/transition_logging.cpp integration/amalgamation_header.cpp integration/custom_targets.cpp @@ -84,6 +83,15 @@ add_executable( integration/reproducer/should_enter_substate_with_multiple_regions.cpp ) +if (UNIX) + target_sources( + hsmIntegrationTests + PRIVATE + # Test compilation fails with msvc with: fatal error C1001: Internal compiler error + integration/state_data_members.cpp + ) +endif() + target_compile_features(hsmIntegrationTests PRIVATE cxx_std_17) target_link_libraries(hsmIntegrationTests PRIVATE hsm::hsm GTest::gtest_main) gtest_discover_tests(hsmIntegrationTests TEST_PREFIX integration.)