regcomp.c: Move #define to earlier in file
authorKarl Williamson <public@khwilliamson.com>
Thu, 13 Dec 2012 04:17:45 +0000 (21:17 -0700)
committerKarl Williamson <public@khwilliamson.com>
Sat, 22 Dec 2012 18:11:28 +0000 (11:11 -0700)
This will be needed by code being added earlier in the file than the
define is currently.  It also makes sure that it is integer division.

regcomp.c

index aa3608a..2a8ad06 100644 (file)
--- a/regcomp.c
+++ b/regcomp.c
@@ -263,6 +263,11 @@ typedef struct RExC_state_t {
                                      if (! UTF) JMPENV_JUMP(UTF8_LONGJMP); \
                         } STMT_END
 
+/* This converts the named class defined in regcomp.h to its equivalent class
+ * number defined in handy.h. */
+#define namedclass_to_classnum(class)  ((int) ((class) / 2))
+#define classnum_to_namedclass(classnum)  ((classnum) * 2)
+
 /* About scan_data_t.
 
   During optimisation we recurse through the regexp program performing
@@ -11455,10 +11460,6 @@ S_regpposixcc(pTHX_ RExC_state_t *pRExC_state, I32 value, SV *free_me)
  * changed since initialization, then there is a run-time definition. */
 #define HAS_NONLOCALE_RUNTIME_PROPERTY_DEFINITION (SvCUR(listsv) != initial_listsv_len)
 
-/* This converts the named class defined in regcomp.h to its equivalent class
- * number defined in handy.h. */
-#define namedclass_to_classnum(class)  ((class) / 2)
-
 STATIC regnode *
 S_regclass(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth)
 {