Browse Source

+ internal error added

git-svn-id: trunk@1069 -
florian 20 years ago
parent
commit
cdd5b61af8
2 changed files with 6 additions and 2 deletions
  1. 4 2
      compiler/ncal.pas
  2. 2 0
      compiler/ncgbas.pas

+ 4 - 2
compiler/ncal.pas

@@ -1,8 +1,8 @@
 {
 {
-    Copyright (c) 1998-2002 by Florian Klaempfl
-
     This file implements the node for sub procedure calling.
     This file implements the node for sub procedure calling.
 
 
+    Copyright (c) 1998-2002 by Florian Klaempfl
+
     This program is free software; you can redistribute it and/or modify
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
     it under the terms of the GNU General Public License as published by
     the Free Software Foundation; either version 2 of the License, or
     the Free Software Foundation; either version 2 of the License, or
@@ -2176,6 +2176,7 @@ type
                           funcretnode := ctemprefnode.create(tempnode);
                           funcretnode := ctemprefnode.create(tempnode);
                         para.left.free;
                         para.left.free;
                         para.left := ctemprefnode.create(tempnode);
                         para.left := ctemprefnode.create(tempnode);
+
                         addstatement(deletestatement,ctempdeletenode.create_normal_temp(tempnode));
                         addstatement(deletestatement,ctempdeletenode.create_normal_temp(tempnode));
                       end
                       end
                   end
                   end
@@ -2250,6 +2251,7 @@ type
         if assigned(funcretnode) and
         if assigned(funcretnode) and
            (cnf_return_value_used in callnodeflags) then
            (cnf_return_value_used in callnodeflags) then
           addstatement(createstatement,funcretnode.getcopy);
           addstatement(createstatement,funcretnode.getcopy);
+
         { consider it must not be inlined if called
         { consider it must not be inlined if called
           again inside the args or itself }
           again inside the args or itself }
         exclude(procdefinition.procoptions,po_inline);
         exclude(procdefinition.procoptions,po_inline);

+ 2 - 0
compiler/ncgbas.pas

@@ -486,6 +486,8 @@ interface
               if release_to_normal then
               if release_to_normal then
                 tempinfo^.location.loc := LOC_REGISTER;
                 tempinfo^.location.loc := LOC_REGISTER;
             end;
             end;
+          else
+            internalerror(200507161);
         end;
         end;
       end;
       end;