summaryrefslogtreecommitdiff
path: root/regcharclass.h
diff options
context:
space:
mode:
authorYves Orton <demerphq@gmail.com>2012-09-29 23:57:10 +0200
committerYves Orton <demerphq@gmail.com>2012-09-29 23:57:10 +0200
commit6c4f067834ceefa3a58497985d62977e4f8738e9 (patch)
tree5d0e529e80b36fcdc9908db35587e565912666a5 /regcharclass.h
parent8fdb8a9d41abc2af72159f8ec4ee3d69fceab9ce (diff)
downloadperl-6c4f067834ceefa3a58497985d62977e4f8738e9.tar.gz
improve conditional folding logic in regen/regcharclass.pl
Diffstat (limited to 'regcharclass.h')
-rw-r--r--regcharclass.h162
1 files changed, 40 insertions, 122 deletions
diff --git a/regcharclass.h b/regcharclass.h
index c492d33f7c..d0aedf323c 100644
--- a/regcharclass.h
+++ b/regcharclass.h
@@ -30,9 +30,7 @@
: ( is_utf8 ) ? \
( ( 0xC2 == ((U8*)s)[0] ) ? \
( ( 0x85 == ((U8*)s)[1] ) ? 2 : 0 ) \
- : ( 0xE2 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
- : 0 ) \
+ : ( ( ( 0xE2 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
: ( 0x85 == ((U8*)s)[0] ) )
/*** GENERATED CODE ***/
@@ -44,9 +42,7 @@
: ( is_utf8 ) ? \
( ( 0xC2 == ((U8*)s)[0] ) ? \
( ( 0x85 == ((U8*)s)[1] ) ? 2 : 0 ) \
- : ( 0xE2 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
- : 0 ) \
+ : ( ( ( 0xE2 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
: ( 0x85 == ((U8*)s)[0] ) ) \
: ((e)-(s) > 1) ? \
( ( 0x0A <= ((U8*)s)[0] && ((U8*)s)[0] <= 0x0C ) ? 1 \
@@ -69,9 +65,7 @@
( ( 0x0A == ((U8*)s)[1] ) ? 2 : 1 ) \
: ( 0xC2 == ((U8*)s)[0] ) ? \
( ( 0x85 == ((U8*)s)[1] ) ? 2 : 0 ) \
-: ( 0xE2 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
-: 0 )
+: ( ( ( 0xE2 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )
/*** GENERATED CODE ***/
#define is_LNBREAK_utf8_safe(s,e) \
@@ -81,16 +75,12 @@
( ( 0x0A == ((U8*)s)[1] ) ? 2 : 1 ) \
: ( 0xC2 == ((U8*)s)[0] ) ? \
( ( 0x85 == ((U8*)s)[1] ) ? 2 : 0 ) \
- : ( 0xE2 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
- : 0 ) \
+ : ( ( ( 0xE2 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
: ((e)-(s) > 1) ? \
( ( 0x0A <= ((U8*)s)[0] && ((U8*)s)[0] <= 0x0C ) ? 1 \
: ( 0x0D == ((U8*)s)[0] ) ? \
( ( 0x0A == ((U8*)s)[1] ) ? 2 : 1 ) \
- : ( 0xC2 == ((U8*)s)[0] ) ? \
- ( ( 0x85 == ((U8*)s)[1] ) ? 2 : 0 ) \
- : 0 ) \
+ : ( ( 0xC2 == ((U8*)s)[0] ) && ( 0x85 == ((U8*)s)[1] ) ) ? 2 : 0 ) \
: ((e)-(s) > 0) ? \
( 0x0A <= ((U8*)s)[0] && ((U8*)s)[0] <= 0x0D ) \
: 0 )
@@ -127,18 +117,12 @@
: ( 0xE1 == ((U8*)s)[0] ) ? \
( ( 0x9A == ((U8*)s)[1] ) ? \
( ( 0x80 == ((U8*)s)[2] ) ? 3 : 0 ) \
- : ( 0xA0 == ((U8*)s)[1] ) ? \
- ( ( 0x8E == ((U8*)s)[2] ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0xA0 == ((U8*)s)[1] ) && ( 0x8E == ((U8*)s)[2] ) ) ? 3 : 0 ) \
: ( 0xE2 == ((U8*)s)[0] ) ? \
( ( 0x80 == ((U8*)s)[1] ) ? \
( ( ( 0x80 <= ((U8*)s)[2] && ((U8*)s)[2] <= 0x8A ) || 0xAF == ((U8*)s)[2] ) ? 3 : 0 )\
- : ( 0x81 == ((U8*)s)[1] ) ? \
- ( ( 0x9F == ((U8*)s)[2] ) ? 3 : 0 ) \
- : 0 ) \
- : ( 0xE3 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( 0x80 == ((U8*)s)[2] ) ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0x81 == ((U8*)s)[1] ) && ( 0x9F == ((U8*)s)[2] ) ) ? 3 : 0 ) \
+ : ( ( ( 0xE3 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( 0x80 == ((U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0xA0 == ((U8*)s)[0] ) )
/*** GENERATED CODE ***/
@@ -151,18 +135,12 @@
: ( 0xE1 == ((U8*)s)[0] ) ? \
( ( 0x9A == ((U8*)s)[1] ) ? \
( ( 0x80 == ((U8*)s)[2] ) ? 3 : 0 ) \
- : ( 0xA0 == ((U8*)s)[1] ) ? \
- ( ( 0x8E == ((U8*)s)[2] ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0xA0 == ((U8*)s)[1] ) && ( 0x8E == ((U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0xE2 == ((U8*)s)[0] ) ? \
( ( 0x80 == ((U8*)s)[1] ) ? \
( ( ( 0x80 <= ((U8*)s)[2] && ((U8*)s)[2] <= 0x8A ) || 0xAF == ((U8*)s)[2] ) ? 3 : 0 )\
- : ( 0x81 == ((U8*)s)[1] ) ? \
- ( ( 0x9F == ((U8*)s)[2] ) ? 3 : 0 ) \
- : 0 ) \
- : ( 0xE3 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( 0x80 == ((U8*)s)[2] ) ) ? 3 : 0 )\
- : 0 ) \
+ : ( ( 0x81 == ((U8*)s)[1] ) && ( 0x9F == ((U8*)s)[2] ) ) ? 3 : 0 )\
+ : ( ( ( 0xE3 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( 0x80 == ((U8*)s)[2] ) ) ? 3 : 0 )\
: ( 0xA0 == ((U8*)s)[0] ) ) \
: ((e)-(s) > 1) ? \
( ( 0x09 == ((U8*)s)[0] || 0x20 == ((U8*)s)[0] ) ? 1 \
@@ -184,18 +162,12 @@
: ( 0xE1 == ((U8*)s)[0] ) ? \
( ( 0x9A == ((U8*)s)[1] ) ? \
( ( 0x80 == ((U8*)s)[2] ) ? 3 : 0 ) \
- : ( 0xA0 == ((U8*)s)[1] ) ? \
- ( ( 0x8E == ((U8*)s)[2] ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0xA0 == ((U8*)s)[1] ) && ( 0x8E == ((U8*)s)[2] ) ) ? 3 : 0 ) \
: ( 0xE2 == ((U8*)s)[0] ) ? \
( ( 0x80 == ((U8*)s)[1] ) ? \
( ( ( ((U8*)s)[2] <= 0x8A ) || 0xAF == ((U8*)s)[2] ) ? 3 : 0 ) \
- : ( 0x81 == ((U8*)s)[1] ) ? \
- ( ( 0x9F == ((U8*)s)[2] ) ? 3 : 0 ) \
- : 0 ) \
-: ( 0xE3 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( 0x80 == ((U8*)s)[2] ) ) ? 3 : 0 ) \
-: 0 )
+ : ( ( 0x81 == ((U8*)s)[1] ) && ( 0x9F == ((U8*)s)[2] ) ) ? 3 : 0 ) \
+: ( ( ( 0xE3 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( 0x80 == ((U8*)s)[2] ) ) ? 3 : 0 )
/*** GENERATED CODE ***/
#define is_HORIZWS_utf8_safe(s,e) \
@@ -206,23 +178,15 @@
: ( 0xE1 == ((U8*)s)[0] ) ? \
( ( 0x9A == ((U8*)s)[1] ) ? \
( ( 0x80 == ((U8*)s)[2] ) ? 3 : 0 ) \
- : ( 0xA0 == ((U8*)s)[1] ) ? \
- ( ( 0x8E == ((U8*)s)[2] ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0xA0 == ((U8*)s)[1] ) && ( 0x8E == ((U8*)s)[2] ) ) ? 3 : 0 ) \
: ( 0xE2 == ((U8*)s)[0] ) ? \
( ( 0x80 == ((U8*)s)[1] ) ? \
( ( ( 0x80 <= ((U8*)s)[2] && ((U8*)s)[2] <= 0x8A ) || 0xAF == ((U8*)s)[2] ) ? 3 : 0 )\
- : ( 0x81 == ((U8*)s)[1] ) ? \
- ( ( 0x9F == ((U8*)s)[2] ) ? 3 : 0 ) \
- : 0 ) \
- : ( 0xE3 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( 0x80 == ((U8*)s)[2] ) ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0x81 == ((U8*)s)[1] ) && ( 0x9F == ((U8*)s)[2] ) ) ? 3 : 0 ) \
+ : ( ( ( 0xE3 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( 0x80 == ((U8*)s)[2] ) ) ? 3 : 0 )\
: ((e)-(s) > 1) ? \
( ( 0x09 == ((U8*)s)[0] || 0x20 == ((U8*)s)[0] ) ? 1 \
- : ( 0xC2 == ((U8*)s)[0] ) ? \
- ( ( 0xA0 == ((U8*)s)[1] ) ? 2 : 0 ) \
- : 0 ) \
+ : ( ( 0xC2 == ((U8*)s)[0] ) && ( 0xA0 == ((U8*)s)[1] ) ) ? 2 : 0 ) \
: ((e)-(s) > 0) ? \
( 0x09 == ((U8*)s)[0] || 0x20 == ((U8*)s)[0] ) \
: 0 )
@@ -260,9 +224,7 @@
: ( is_utf8 ) ? \
( ( 0xC2 == ((U8*)s)[0] ) ? \
( ( 0x85 == ((U8*)s)[1] ) ? 2 : 0 ) \
- : ( 0xE2 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
- : 0 ) \
+ : ( ( ( 0xE2 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
: ( 0x85 == ((U8*)s)[0] ) )
/*** GENERATED CODE ***/
@@ -272,9 +234,7 @@
: ( is_utf8 ) ? \
( ( 0xC2 == ((U8*)s)[0] ) ? \
( ( 0x85 == ((U8*)s)[1] ) ? 2 : 0 ) \
- : ( 0xE2 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
- : 0 ) \
+ : ( ( ( 0xE2 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
: ( 0x85 == ((U8*)s)[0] ) ) \
: ((e)-(s) > 1) ? \
( ( 0x0A <= ((U8*)s)[0] && ((U8*)s)[0] <= 0x0D ) ? 1 \
@@ -293,9 +253,7 @@
( ( 0x0A <= ((U8*)s)[0] && ((U8*)s)[0] <= 0x0D ) ? 1 \
: ( 0xC2 == ((U8*)s)[0] ) ? \
( ( 0x85 == ((U8*)s)[1] ) ? 2 : 0 ) \
-: ( 0xE2 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
-: 0 )
+: ( ( ( 0xE2 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )
/*** GENERATED CODE ***/
#define is_VERTWS_utf8_safe(s,e) \
@@ -303,14 +261,10 @@
( ( 0x0A <= ((U8*)s)[0] && ((U8*)s)[0] <= 0x0D ) ? 1 \
: ( 0xC2 == ((U8*)s)[0] ) ? \
( ( 0x85 == ((U8*)s)[1] ) ? 2 : 0 ) \
- : ( 0xE2 == ((U8*)s)[0] ) ? \
- ( ( ( 0x80 == ((U8*)s)[1] ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
- : 0 ) \
+ : ( ( ( 0xE2 == ((U8*)s)[0] ) && ( 0x80 == ((U8*)s)[1] ) ) && ( ( ((U8*)s)[2] & 0xFE ) == 0xA8 ) ) ? 3 : 0 )\
: ((e)-(s) > 1) ? \
( ( 0x0A <= ((U8*)s)[0] && ((U8*)s)[0] <= 0x0D ) ? 1 \
- : ( 0xC2 == ((U8*)s)[0] ) ? \
- ( ( 0x85 == ((U8*)s)[1] ) ? 2 : 0 ) \
- : 0 ) \
+ : ( ( 0xC2 == ((U8*)s)[0] ) && ( 0x85 == ((U8*)s)[1] ) ) ? 2 : 0 ) \
: ((e)-(s) > 0) ? \
( 0x0A <= ((U8*)s)[0] && ((U8*)s)[0] <= 0x0D ) \
: 0 )
@@ -351,16 +305,12 @@
( ( 0xEF == ((U8*)s)[0] ) ? \
( ( 0xB7 == ((U8*)s)[1] ) ? \
( ( 0x90 <= ((U8*)s)[2] && ((U8*)s)[2] <= 0xAF ) ? 3 : 0 ) \
- : ( 0xBF == ((U8*)s)[1] ) ? \
- ( ( ((U8*)s)[2] >= 0xBE ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0xBF == ((U8*)s)[1] ) && ( ((U8*)s)[2] >= 0xBE ) ) ? 3 : 0 ) \
: ( 0xF0 == ((U8*)s)[0] ) ? \
( ( ( ( 0x9F == ((U8*)s)[1] || 0xAF == ((U8*)s)[1] || 0xBF == ((U8*)s)[1] ) && ( 0xBF == ((U8*)s)[2] ) ) && ( ((U8*)s)[3] >= 0xBE ) ) ? 4 : 0 )\
: ( 0xF1 <= ((U8*)s)[0] && ((U8*)s)[0] <= 0xF3 ) ? \
( ( ( ( ( ((U8*)s)[1] & 0xCF ) == 0x8F ) && ( 0xBF == ((U8*)s)[2] ) ) && ( ((U8*)s)[3] >= 0xBE ) ) ? 4 : 0 )\
-: ( 0xF4 == ((U8*)s)[0] ) ? \
- ( ( ( ( 0x8F == ((U8*)s)[1] ) && ( 0xBF == ((U8*)s)[2] ) ) && ( ((U8*)s)[3] >= 0xBE ) ) ? 4 : 0 )\
-: 0 )
+: ( ( ( ( 0xF4 == ((U8*)s)[0] ) && ( 0x8F == ((U8*)s)[1] ) ) && ( 0xBF == ((U8*)s)[2] ) ) && ( ((U8*)s)[3] >= 0xBE ) ) ? 4 : 0 )
/*
SURROGATE: Surrogate characters
@@ -381,12 +331,8 @@
( ( 0xE1 == ((U8*)s)[0] ) ? \
( ( 0x84 == ((U8*)s)[1] ) ? \
3 \
- : ( 0x85 == ((U8*)s)[1] ) ? \
- ( ( ((U8*)s)[2] <= 0x9F ) ? 3 : 0 ) \
- : 0 ) \
-: ( 0xEA == ((U8*)s)[0] ) ? \
- ( ( ( 0xA5 == ((U8*)s)[1] ) && ( 0xA0 <= ((U8*)s)[2] && ((U8*)s)[2] <= 0xBC ) ) ? 3 : 0 )\
-: 0 )
+ : ( ( 0x85 == ((U8*)s)[1] ) && ( ((U8*)s)[2] <= 0x9F ) ) ? 3 : 0 ) \
+: ( ( ( 0xEA == ((U8*)s)[0] ) && ( 0xA5 == ((U8*)s)[1] ) ) && ( 0xA0 <= ((U8*)s)[2] && ((U8*)s)[2] <= 0xBC ) ) ? 3 : 0 )
/*
GCB_LV_LVT_V: Grapheme_Cluster_Break=(LV or LVT or V)
@@ -398,9 +344,7 @@
( ( 0xE1 == ((U8*)s)[0] ) ? \
( ( 0x85 == ((U8*)s)[1] ) ? \
( ( ((U8*)s)[2] >= 0xA0 ) ? 3 : 0 ) \
- : ( 0x86 == ((U8*)s)[1] ) ? \
- ( ( ((U8*)s)[2] <= 0xA7 ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0x86 == ((U8*)s)[1] ) && ( ((U8*)s)[2] <= 0xA7 ) ) ? 3 : 0 ) \
: ( 0xEA == ((U8*)s)[0] ) ? \
( ( ((U8*)s)[1] >= 0xB0 ) ? \
3 \
@@ -412,9 +356,7 @@
3 \
: ( 0x9E == ((U8*)s)[1] ) ? \
( ( ( ((U8*)s)[2] <= 0xA3 ) || ( ((U8*)s)[2] >= 0xB0 ) ) ? 3 : 0 ) \
- : ( 0x9F == ((U8*)s)[1] ) ? \
- ( ( ((U8*)s)[2] <= 0x86 ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0x9F == ((U8*)s)[1] ) && ( ((U8*)s)[2] <= 0x86 ) ) ? 3 : 0 ) \
: 0 )
/*
@@ -459,12 +401,8 @@
3 \
: ( 0x9E == ((U8*)s)[1] ) ? \
( ( ( ((U8*)s)[2] <= 0xA3 ) || ( ((U8*)s)[2] >= 0xB0 ) ) ? 3 : 0 ) \
- : ( 0x9F == ((U8*)s)[1] ) ? \
- ( ( ( ((U8*)s)[2] <= 0x86 ) || ( 0x8B <= ((U8*)s)[2] && ((U8*)s)[2] <= 0xBB ) ) ? 3 : 0 )\
- : 0 ) \
-: ( 0xF0 == ((U8*)s)[0] ) ? \
- ( ( ( ( 0x9F == ((U8*)s)[1] ) && ( 0x87 == ((U8*)s)[2] ) ) && ( ((U8*)s)[3] >= 0xA6 ) ) ? 4 : 0 )\
-: 0 )
+ : ( ( 0x9F == ((U8*)s)[1] ) && ( ( ((U8*)s)[2] <= 0x86 ) || ( 0x8B <= ((U8*)s)[2] && ((U8*)s)[2] <= 0xBB ) ) ) ? 3 : 0 )\
+: ( ( ( ( 0xF0 == ((U8*)s)[0] ) && ( 0x9F == ((U8*)s)[1] ) ) && ( 0x87 == ((U8*)s)[2] ) ) && ( ((U8*)s)[3] >= 0xA6 ) ) ? 4 : 0 )
/*
GCB_T: Grapheme_Cluster_Break=T
@@ -479,9 +417,7 @@
: ( 0x87 == ((U8*)s)[1] ) ? \
3 \
: 0 ) \
-: ( 0xED == ((U8*)s)[0] ) ? \
- ( ( ( 0x9F == ((U8*)s)[1] ) && ( 0x8B <= ((U8*)s)[2] && ((U8*)s)[2] <= 0xBB ) ) ? 3 : 0 )\
-: 0 )
+: ( ( ( 0xED == ((U8*)s)[0] ) && ( 0x9F == ((U8*)s)[1] ) ) && ( 0x8B <= ((U8*)s)[2] && ((U8*)s)[2] <= 0xBB ) ) ? 3 : 0 )
/*
GCB_V: Grapheme_Cluster_Break=V
@@ -493,15 +429,11 @@
( ( 0xE1 == ((U8*)s)[0] ) ? \
( ( 0x85 == ((U8*)s)[1] ) ? \
( ( ((U8*)s)[2] >= 0xA0 ) ? 3 : 0 ) \
- : ( 0x86 == ((U8*)s)[1] ) ? \
- ( ( ((U8*)s)[2] <= 0xA7 ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0x86 == ((U8*)s)[1] ) && ( ((U8*)s)[2] <= 0xA7 ) ) ? 3 : 0 ) \
: ( 0xED == ((U8*)s)[0] ) ? \
( ( 0x9E == ((U8*)s)[1] ) ? \
( ( ((U8*)s)[2] >= 0xB0 ) ? 3 : 0 ) \
- : ( 0x9F == ((U8*)s)[1] ) ? \
- ( ( ((U8*)s)[2] <= 0x86 ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0x9F == ((U8*)s)[1] ) && ( ((U8*)s)[2] <= 0x86 ) ) ? 3 : 0 ) \
: 0 )
/*
@@ -520,9 +452,7 @@
( ( 0x80 == ((U8*)s)[2] ) ? 3 : 0 ) \
: ( 0x9E == ((U8*)s)[1] ) ? \
( ( ( ((U8*)s)[2] & 0xFE ) == 0xB4 ) ? 3 : 0 ) \
- : ( 0xA0 == ((U8*)s)[1] ) ? \
- ( ( 0x8B <= ((U8*)s)[2] && ((U8*)s)[2] <= 0x8E ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0xA0 == ((U8*)s)[1] ) && ( 0x8B <= ((U8*)s)[2] && ((U8*)s)[2] <= 0x8E ) ) ? 3 : 0 )\
: ( 0xE2 == ((U8*)s)[0] ) ? \
( ( 0x80 == ((U8*)s)[1] ) ? \
( ( ((U8*)s)[2] <= 0xBE ) ? 3 : 0 ) \
@@ -546,9 +476,7 @@
: ( 0xE3 == ((U8*)s)[0] ) ? \
( ( 0x80 == ((U8*)s)[1] ) ? \
( ( ( ((U8*)s)[2] <= 0x83 ) || ( 0x88 <= ((U8*)s)[2] && ((U8*)s)[2] <= 0xA0 ) || 0xB0 == ((U8*)s)[2] ) ? 3 : 0 )\
- : ( 0x85 == ((U8*)s)[1] ) ? \
- ( ( 0xA4 == ((U8*)s)[2] ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0x85 == ((U8*)s)[1] ) && ( 0xA4 == ((U8*)s)[2] ) ) ? 3 : 0 ) \
: ( 0xEF == ((U8*)s)[0] ) ? \
( ( 0xB4 == ((U8*)s)[1] ) ? \
( ( ((U8*)s)[2] >= 0xBE ) ? 3 : 0 ) \
@@ -560,16 +488,10 @@
( ( 0xBF == ((U8*)s)[2] ) ? 3 : 0 ) \
: ( 0xBE == ((U8*)s)[1] ) ? \
( ( 0xA0 == ((U8*)s)[2] ) ? 3 : 0 ) \
- : ( 0xBF == ((U8*)s)[1] ) ? \
- ( ( 0xB0 <= ((U8*)s)[2] && ((U8*)s)[2] <= 0xB8 ) ? 3 : 0 ) \
- : 0 ) \
+ : ( ( 0xBF == ((U8*)s)[1] ) && ( 0xB0 <= ((U8*)s)[2] && ((U8*)s)[2] <= 0xB8 ) ) ? 3 : 0 )\
: ( 0xF0 == ((U8*)s)[0] ) ? \
( ( ( ( 0x9D == ((U8*)s)[1] ) && ( 0x85 == ((U8*)s)[2] ) ) && ( 0xB3 <= ((U8*)s)[3] && ((U8*)s)[3] <= 0xBA ) ) ? 4 : 0 )\
-: ( 0xF3 == ((U8*)s)[0] ) ? \
- ( ( 0xA0 == ((U8*)s)[1] ) ? \
- 4 \
- : 0 ) \
-: 0 )
+: ( ( 0xF3 == ((U8*)s)[0] ) && ( 0xA0 == ((U8*)s)[1] ) ) ? 4 : 0 )
/*
FOR_TESTING_DEMO: This is used to test if we generate incorrect code (currently it is ok)
@@ -583,13 +505,9 @@
( ( 0xCE == ((U8*)s)[0] ) ? \
( ( 0xB7 == ((U8*)s)[1] ) ? \
( ( ( 0xCD == ((U8*)s)[2] ) && ( 0x82 == ((U8*)s)[3] ) ) ? 4 : 0 )\
- : ( 0xB9 == ((U8*)s)[1] ) ? \
- ( ( ( ( ( 0xCC == ((U8*)s)[2] ) && ( 0x88 == ((U8*)s)[3] ) ) && ( 0xCC == ((U8*)s)[4] ) ) && ( 0x81 == ((U8*)s)[5] ) ) ? 6 : 0 )\
- : 0 ) \
+ : ( ( ( ( ( 0xB9 == ((U8*)s)[1] ) && ( 0xCC == ((U8*)s)[2] ) ) && ( 0x88 == ((U8*)s)[3] ) ) && ( 0xCC == ((U8*)s)[4] ) ) && ( 0x81 == ((U8*)s)[5] ) ) ? 6 : 0 )\
: 0 ) \
-: ((e)-(s) > 3) ? \
- ( ( ( ( ( 0xCE == ((U8*)s)[0] ) && ( 0xB7 == ((U8*)s)[1] ) ) && ( 0xCD == ((U8*)s)[2] ) ) && ( 0x82 == ((U8*)s)[3] ) ) ? 4 : 0 )\
-: 0 )
+: ( ( ( ( ((e)-(s) > 3) && ( 0xCE == ((U8*)s)[0] ) ) && ( 0xB7 == ((U8*)s)[1] ) ) && ( 0xCD == ((U8*)s)[2] ) ) && ( 0x82 == ((U8*)s)[3] ) ) ? 4 : 0 )
#endif /* H_REGCHARCLASS */