Skip to content

Commit 238dd98

Browse files
committed
going back go c++14
1 parent 95280a7 commit 238dd98

File tree

3 files changed

+7
-9
lines changed

3 files changed

+7
-9
lines changed

examples_cpp/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ run: demo
22
./demo
33

44
demo: demo.cpp ../include/proto_activities.h
5-
c++ --std c++17 -I ../include demo.cpp -o demo
5+
c++ --std c++14 -I ../include demo.cpp -o demo
66

77
clean:
88
rm demo

include/proto_activities.h

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -59,10 +59,11 @@ extern __thread pa_time_t pa_current_time_ms;
5959
#define _pa_extern
6060
#define _pa_has_field_definer(field) \
6161
namespace proto_activities { \
62+
template< class... > using void_t = void; \
6263
template <typename T, typename = void> \
6364
struct has_field_##field : std::false_type {}; \
6465
template <typename T> \
65-
struct has_field_##field<T, std::void_t<decltype(std::declval<T>().field)>> : std::true_type {}; \
66+
struct has_field_##field<T, void_t<decltype(std::declval<T>().field)>> : std::true_type {}; \
6667
}
6768
#define _pa_has_field(ty, field) proto_activities::has_field_##field<ty>::value
6869
#endif
@@ -452,10 +453,8 @@ namespace proto_activities {
452453
template <typename T>
453454
auto invoke_resume(T* frame) -> typename std::enable_if<!_pa_has_field(T, _pa_susres)>::type {}
454455
}
455-
#define _pa_susres_suspend(ty, alias) \
456-
if constexpr (_pa_has_field(ty, _pa_susres)) { proto_activities::invoke_suspend<ty>(_pa_inst_ptr(alias)); }
457-
#define _pa_susres_resume(ty, alias) \
458-
if constexpr (_pa_has_field(ty, _pa_susres)) { proto_activities::invoke_resume<ty>(_pa_inst_ptr(alias)); }
456+
#define _pa_susres_suspend(ty, alias) proto_activities::invoke_suspend<ty>(_pa_inst_ptr(alias));
457+
#define _pa_susres_resume(ty, alias) proto_activities::invoke_resume<ty>(_pa_inst_ptr(alias));
459458

460459
#define pa_susres_res proto_activities::SusRes _pa_susres{};
461460
#define pa_suspend pa_self._pa_susres.sus_thunk = [&]()
@@ -470,8 +469,7 @@ namespace proto_activities {
470469
template <typename T>
471470
auto invoke_enter(T& frame) -> typename std::enable_if<!_pa_has_field(T, _pa_enter)>::type {}
472471
}
473-
#define _pa_enter_invoke(ty) \
474-
if constexpr (_pa_has_field(ty, _pa_enter)) { proto_activities::invoke_enter<ty>(pa_self); }
472+
#define _pa_enter_invoke(ty) proto_activities::invoke_enter<ty>(pa_self);
475473

476474
#define pa_enter_res proto_activities::Enter _pa_enter{};
477475
#define pa_enter pa_self._pa_enter = [&]()

tests_cpp/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ run: tests
22
./tests
33

44
tests: tests.cpp ../include/proto_activities.h
5-
c++ --std c++17 -I ../include tests.cpp -o tests
5+
c++ --std c++14 -I ../include tests.cpp -o tests
66

77
clean:
88
rm tests

0 commit comments

Comments
 (0)