shithub: orca

Download patch

ref: d39bae25f01fe668b6a8a17d7b50312689d2bacd
parent: e2789dd2f885e41946f115f3ccc663415ba191e2
author: cancel <cancel@cancel.fm>
date: Fri Nov 30 16:07:17 EST 2018

Make separate decl prefix macro for easier phase fn testing

--- a/sim.c
+++ b/sim.c
@@ -156,18 +156,20 @@
   (void)Tick_number;                                                           \
   (void)bank_params;
 
+#define OPER_PHASE_SPEC static inline
+
 #define BEGIN_SOLO_PHASE_0(_oper_name)                                         \
-  static inline void oper_phase0_##_oper_name(OPER_PHASE_0_COMMON_ARGS) {      \
+  OPER_PHASE_SPEC void oper_phase0_##_oper_name(OPER_PHASE_0_COMMON_ARGS) {    \
     OPER_IGNORE_COMMON_ARGS()                                                  \
     (void)cell_flags;                                                          \
     enum { This_oper_char = Orca_oper_char_##_oper_name };
 #define BEGIN_SOLO_PHASE_1(_oper_name)                                         \
-  static inline void oper_phase1_##_oper_name(OPER_PHASE_1_COMMON_ARGS) {      \
+  OPER_PHASE_SPEC void oper_phase1_##_oper_name(OPER_PHASE_1_COMMON_ARGS) {    \
     OPER_IGNORE_COMMON_ARGS()                                                  \
     enum { This_oper_char = Orca_oper_char_##_oper_name };
 #define BEGIN_DUAL_PHASE_0(_oper_name)                                         \
-  static inline void oper_phase0_##_oper_name(OPER_PHASE_0_COMMON_ARGS,        \
-                                              Glyph const This_oper_char) {    \
+  OPER_PHASE_SPEC void oper_phase0_##_oper_name(OPER_PHASE_0_COMMON_ARGS,      \
+                                                Glyph const This_oper_char) {  \
     OPER_IGNORE_COMMON_ARGS()                                                  \
     (void)cell_flags;                                                          \
     bool const Dual_is_uppercase =                                             \
@@ -174,8 +176,8 @@
         Orca_oper_upper_char_##_oper_name == This_oper_char;                   \
     (void)Dual_is_uppercase;
 #define BEGIN_DUAL_PHASE_1(_oper_name)                                         \
-  static inline void oper_phase1_##_oper_name(OPER_PHASE_1_COMMON_ARGS,        \
-                                              Glyph const This_oper_char) {    \
+  OPER_PHASE_SPEC void oper_phase1_##_oper_name(OPER_PHASE_1_COMMON_ARGS,      \
+                                                Glyph const This_oper_char) {  \
     OPER_IGNORE_COMMON_ARGS()                                                  \
     bool const Dual_is_uppercase =                                             \
         Orca_oper_upper_char_##_oper_name == This_oper_char;                   \