]> granicus.if.org Git - yasm/commitdiff
Merge [1508] and [1509] from trunk.
authorPeter Johnson <peter@tortall.net>
Tue, 25 Apr 2006 04:45:18 +0000 (04:45 -0000)
committerPeter Johnson <peter@tortall.net>
Tue, 25 Apr 2006 04:45:18 +0000 (04:45 -0000)
svn path=/branches/yasm-0.5.x/; revision=1510

modules/objfmts/win64/tests/win64-dataref.asm
modules/parsers/nasm/nasm-bison.y
modules/parsers/nasm/nasm-token.re

index a0a6d8e80347bd6ba58adc502416a86a2da210d8..d863dc5acee007c132e3c2c51dc2a048af613456 100644 (file)
@@ -131,10 +131,10 @@ trap:             sub     rsp, 256
 [SECTION .pdata]
 dd     trap
 dd     trap.end wrt trap
-dd     $xdatasym
+dd     $$xdatasym
 
 [SECTION .xdata]
-$xdatasym:
+$$xdatasym:
 db     1, 7, 2, 0, 7, 1, 0x20, 0
 
 [SECTION _FOO]
index dd8fea7f6109ac8d7ed6b9107be9a9d200c8a18a..c9fa7fd42c17fd4e1f9328bb8eb64efb71a92c17 100644 (file)
@@ -656,8 +656,12 @@ nasm_parser_directive(yasm_parser_nasm *parser_nasm, const char *name,
     } else if (!yasm_arch_parse_directive(parser_nasm->arch, name, valparams,
                    objext_valparams, parser_nasm->object, line)) {
        ;
-    } else if (yasm_objfmt_directive(parser_nasm->objfmt, name, valparams,
-                                    objext_valparams, line)) {
+    } else if (!yasm_objfmt_directive(parser_nasm->objfmt, name, valparams,
+                                     objext_valparams, line)) {
+       ;
+    } else if (yasm_dbgfmt_directive(parser_nasm->dbgfmt, name,
+                                    parser_nasm->cur_section, valparams,
+                                    line)) {
        yasm__error(line, N_("unrecognized directive [%s]"), name);
     }
 
index 4ece0095e25091e0d9afe438233e348b191f8a14..34e24c2676f9fd0649f89555f6f63a94b40d2b06 100644 (file)
@@ -374,8 +374,8 @@ scan:
        }
 
        /* forced identifier */
-       "$" [a-zA-Z_?][a-zA-Z0-9_$#@~.?]* {
-           lvalp->str_val = yasm__xstrndup(TOK, TOKLEN);
+       "$" [a-zA-Z0-9_$#@~.?]+ {
+           lvalp->str_val = yasm__xstrndup(TOK+1, TOKLEN-1);
            RETURN(ID);
        }