Browse Source

* synchronized with trunk

git-svn-id: branches/wasm@46237 -
nickysn 5 years ago
parent
commit
f72e947ff1

+ 4 - 0
compiler/aarch64/cpupara.pas

@@ -599,6 +599,10 @@ unit cpupara;
                begin
                   paraloc^.size:=paracgsize;
                   paraloc^.loc:=LOC_REFERENCE;
+                  if assigned(hfabasedef) then
+                    paraloc^.def:=carraydef.getreusable_no_free(hfabasedef,paralen div hfabasedef.size)
+                  else
+                    paraloc^.def:=paradef;
 
                   { the current stack offset may not be properly aligned in
                     case we're on Darwin and have allocated a non-variadic argument

+ 1 - 1
compiler/llvm/aasmllvm.pas

@@ -735,7 +735,7 @@ uses
                 internalerror(2015111904);
             end
           else
-            internalerror(2013103101)
+            internalerror(2013103103)
         end;
       end;
 

+ 5 - 1
compiler/nadd.pas

@@ -2225,7 +2225,11 @@ implementation
                    This is compatible with the code below for other unsigned types (PFV) }
                  if is_signed(left.resultdef) or
                     is_signed(right.resultdef) or
-                    (nodetype=subn) then
+                    ((nodetype=subn)
+{$if defined(cpu8bitalu) or defined(cpu16bitalu)}
+                     and not (m_tp7 in current_settings.modeswitches)
+{$endif}
+                    ) then
                    begin
                      if nodetype<>subn then
                        CGMessage(type_h_mixed_signed_unsigned);

+ 2 - 2
compiler/x86/rax86int.pas

@@ -1142,7 +1142,7 @@ Unit Rax86int;
                       SetSegmentOverride(dest,segreg);
                   end;
                 else
-                  internalerror(2018030701);
+                  internalerror(2018030704);
               end;
             end;
           OPR_LOCAL:
@@ -1223,7 +1223,7 @@ Unit Rax86int;
               oper.opr.localsegment:=seg;
             end;
           else
-            internalerror(2018030703);
+            internalerror(2018030705);
         end;
       end;
 

+ 3 - 3
compiler/z80/raz80asm.pas

@@ -862,7 +862,7 @@ Unit raz80asm;
                     dest.opr:=tmplocal;
                   end;
                 else
-                  internalerror(2018030701);
+                  internalerror(2018030711);
               end;
             end;
           OPR_LOCAL:
@@ -900,11 +900,11 @@ Unit raz80asm;
                 OPR_LOCAL:
                   Message(asmr_e_no_local_or_para_allowed);
                 else
-                  internalerror(2018030703);
+                  internalerror(2018030713);
               end;
             end;
           else
-            internalerror(2018030702);
+            internalerror(2018030712);
         end;
       end;
 

+ 1 - 1
packages/pastojs/src/pas2jsjsresources.pp

@@ -83,7 +83,7 @@ begin
   aName:=Options.Values['name'];
   if aName='' then
     aName:=ChangeFileExt(ExtractFileName(aFileName),'');
-  Result:=Format(SAddResource,[aName,CurrentUnitName,aFormat,aData]);
+  Result:=Format(SAddResource,[aName,LowerCase(CurrentUnitName),aFormat,aData]);
 end;
 
 procedure TJSResourceHandler.HandleResource(aFileName: string; Options: TStrings);

+ 3 - 0
utils/pas2js/makestub.lpi

@@ -23,6 +23,9 @@
       <Version Value="2"/>
     </PublishOptions>
     <RunParams>
+      <local>
+        <CommandLineParams Value="--input=&quot;$HOME/source/pas2js/src/rtl/web.pas -S2h&quot; --no-externalclass --no-implementation --no-externalvar --no-externalfunction -x jstypes -o web.pp"/>
+      </local>
       <FormatVersion Value="2"/>
       <Modes Count="1">
         <Mode0 Name="default">

+ 2 - 2
utils/pas2js/stubcreator.pp

@@ -302,7 +302,7 @@ begin
       FileResolver.AddIncludePath(S);
     // Scanner
     Scanner := TPascalScanner.Create(FileResolver);
-    Scanner.Options:=[po_AsmWhole,po_KeepClassForward];
+    Scanner.Options:=[po_AsmWhole,po_KeepClassForward,po_ExtConstWithoutExpr];
     SCanner.LogEvents:=SE.ScannerLogEvents;
     SCanner.OnLog:=SE.Onlog;
     For S in FDefines do
@@ -312,7 +312,7 @@ begin
     Parser:=TPasParser.Create(Scanner, FileResolver, SE);
     Parser.LogEvents:=SE.ParserLogEvents;
     Parser.OnLog:=SE.Onlog;
-    Parser.Options:=Parser.Options+[po_AsmWhole,po_delphi,po_KeepClassForward];
+    Parser.Options:=Parser.Options+[po_AsmWhole,po_delphi,po_KeepClassForward,po_ExtConstWithoutExpr,po_AsyncProcs];
     Parser.ParseMain(Result);
   finally
     Parser.Free;