Browse Source

+ implemented Seg(procedure) on i8086

git-svn-id: trunk@32222 -
nickysn 9 years ago
parent
commit
75dc2ad7e1
1 changed files with 6 additions and 2 deletions
  1. 6 2
      compiler/pexpr.pas

+ 6 - 2
compiler/pexpr.pas

@@ -615,9 +615,13 @@ implementation
           in_seg_x :
             begin
               consume(_LKLAMMER);
-              in_args:=true;
-              p1:=comp_expr(true,false);
+              got_addrn:=true;
+              p1:=factor(true,false,false);
+              { inside parentheses a full expression is allowed, see also tests\webtbs\tb27517.pp }
+              if token<>_RKLAMMER then
+                p1:=sub_expr(opcompare,true,false,p1);
               p1:=geninlinenode(in_seg_x,false,p1);
+              got_addrn:=false;
               consume(_RKLAMMER);
               statement_syssym:=p1;
             end;