]> git.saurik.com Git - cycript.git/blobdiff - Cycript.l.in
Remove empty compound expressions generated by CYVar.
[cycript.git] / Cycript.l.in
index c6ff5abaa538f44c763b9107bb239b2252e2ee94..f97158e294a183e55fb143596b60e9e80cca23e1 100644 (file)
@@ -40,13 +40,7 @@ typedef cy::parser::token tk;
 #define C T yyextra->state_ = CYClear;
 #define R T yyextra->state_ = CYRestricted;
 
-#define E(prefix) L C { \
-    char *value(A char[yyleng + sizeof(prefix)]); \
-    memcpy(value, prefix, sizeof(prefix) - 1); \
-    memcpy(value + sizeof(prefix) - 1, yytext, yyleng); \
-    value[yyleng + sizeof(prefix) - 1] = '\0'; \
-    I(literal, RegEx(value), RegularExpressionLiteral); \
-}
+#define E L C I(literal, RegEx(Y), RegularExpressionLiteral);
 
 #define N \
     if (yyextra->state_ != CYNewLine) { \
@@ -147,7 +141,7 @@ XMLName {XMLNameStart}{XMLNamePart}*
 
 %%
 
-<RegExp>\/{RegularExpressionBody}\/{RegularExpressionFlags} E("")
+<RegExp>\/{RegularExpressionBody}\/{RegularExpressionFlags} E
 
 \/\/[^\n]* L