Jelajahi Sumber

* error handling of pass_1 and cgi386 fixed
* the following bugs fixed: 0117, 0118, 0119 and 0129, 0122 was already
fixed, verified

florian 27 tahun lalu
induk
melakukan
de04288a2a
4 mengubah file dengan 787 tambahan dan 661 penghapusan
  1. 66 5
      compiler/cgi386.pas
  2. 650 650
      compiler/msgtxt.inc
  3. 64 4
      compiler/pass_1.pas
  4. 7 2
      compiler/verbose.pas

+ 66 - 5
compiler/cgi386.pas

@@ -99,12 +99,60 @@ implementation
      const
        bytes2Sxx:array[1..4] of Topsize=(S_B,S_W,S_NO,S_L);
 
-    procedure error(const t : tmsgconst);
+    procedure message(const t : tmsgconst);
+
+      var
+         olderrorcount : longint;
 
       begin
          if not(codegenerror) then
-           verbose.Message(t);
-         codegenerror:=true;
+           begin
+              olderrorcount:=errorcount;
+              verbose.Message(t);
+              codegenerror:=olderrorcount<>errorcount;
+           end;
+      end;
+
+    procedure message1(const t : tmsgconst;const s : string);
+
+      var
+         olderrorcount : longint;
+
+      begin
+         if not(codegenerror) then
+           begin
+              olderrorcount:=errorcount;
+              verbose.Message1(t,s);
+              codegenerror:=olderrorcount<>errorcount;
+           end;
+      end;
+
+    procedure message2(const t : tmsgconst;const s1,s2 : string);
+
+      var
+         olderrorcount : longint;
+
+      begin
+         if not(codegenerror) then
+           begin
+              olderrorcount:=errorcount;
+              verbose.Message2(t,s1,s2);
+              codegenerror:=olderrorcount<>errorcount;
+           end;
+      end;
+
+    procedure message3(const t : tmsgconst;const s1,s2,s3 : string);
+
+      var
+         olderrorcount : longint;
+
+      begin
+         if not(codegenerror) then
+           begin
+              olderrorcount:=errorcount;
+              verbose.Message3(t,s1,s2,s3);
+              codegenerror:=olderrorcount<>errorcount;
+           end;
       end;
 
     type
@@ -2093,6 +2141,10 @@ implementation
          getlabel(falselabel);
          { calculate left sides }
          secondpass(p^.left);
+
+         if codegenerror then
+           exit;
+
          case p^.left^.location.loc of
             LOC_REFERENCE : begin
                               { in case left operator uses to register }
@@ -2150,6 +2202,10 @@ implementation
                 end;
            end;
          secondpass(p^.right);
+
+         if codegenerror then
+           exit;
+
 {$ifdef test_dest_loc}
          dest_loc_known:=false;
          if in_dest_loc then
@@ -4596,7 +4652,7 @@ implementation
               cleartempgen;
 
               getlabel(l3);
-              aktcontinuelabel:=l1;
+              aktcontinuelabel:=l2;
               aktbreaklabel:=l3;
 
               if assigned(p^.right) then
@@ -5751,7 +5807,12 @@ do_jmp:
 end.
 {
   $Log$
-  Revision 1.11  1998-04-13 08:42:51  florian
+  Revision 1.12  1998-04-13 21:15:41  florian
+    * error handling of pass_1 and cgi386 fixed
+    * the following bugs fixed: 0117, 0118, 0119 and 0129, 0122 was already
+      fixed, verified
+
+  Revision 1.11  1998/04/13 08:42:51  florian
     * call by reference and call by value open arrays fixed
 
   Revision 1.10  1998/04/12 22:39:43  florian

+ 650 - 650
compiler/msgtxt.inc

@@ -1,4 +1,4 @@
-const msgtxt : array[1..13961] of char=(
+const msgtxt : array[1..13962] of char=(
   'I','_','$','1',' ','k','B',' ','f','r','e','e',#000,'L','_',
   '$','1',' ','l','i','n','e','s',' ','$','2',' ','k','B',' ',
   'f','r','e','e',#000,'I','_','$','1',' ','s','t','r','e','a',
@@ -180,7 +180,7 @@ const msgtxt : array[1..13961] of char=(
   'a','x',' ','o','f',' ','D','I','S','P','O','S','E',' ','a',
   'n','d',' ','N','E','W',' ','t','o',' ','g','e','n','e','r',
   'a','t','e',' ','i','n','s','t','a','n','c','e','s',' ','o',
-  'f',' ','c','l','a','s','s','e','s',#000,'E','_','c','l','a',
+  'f',' ','o','b','j','e','c','t','s',#000,'E','_','c','l','a',
   's','s',' ','i','d','e','n','t','i','f','i','e','r',' ','e',
   'x','p','e','c','t','e','d',#000,'E','_','m','e','t','h','o',
   'd',' ','i','d','e','n','t','i','f','i','e','r',' ','e','x',
@@ -273,660 +273,660 @@ const msgtxt : array[1..13961] of char=(
   'r','u','c','t','o','r',' ','c','a','l','l',#000,'E','_','T',
   'y','p','e',' ','c','o','n','f','l','i','c','t',' ','b','e',
   't','w','e','e','n',' ','s','e','t',' ','e','l','e','m','e',
-  'n','t','s',#000,'W','_','T','h','e',' ','o','p','e','r','a',
-  't','o','r',' ','/',' ','i','s','n',#039,'t',' ','d','e','f',
-  'i','n','e','d',' ','f','o','r',' ','i','n','t','e','g','e',
-  'r',',',' ','t','h','e',' ','r','e','s','u','l','t',' ','w',
-  'i','l','l',' ','b','e',' ','r','e','a','l',',',' ','u','s',
-  'e',' ','D','I','V',' ','i','n','s','t','e','a','d',#000,'E',
-  '_','I','l','l','e','g','a','l',' ','o','r','d','e','r',' ',
-  'o','f',' ','r','e','c','o','r','d',' ','e','l','e','m','e',
-  'n','t','s',#000,'E','_','E','x','p','r','e','s','s','i','o',
-  'n',' ','t','y','p','e',' ','m','u','s','t',' ','b','y',' ',
-  'c','l','a','s','s',' ','o','r',' ','r','e','c','o','r','d',
-  ' ','t','y','p','e',#000,'E','_','F','u','n','c','t','i','o',
-  'n','s',' ','w','i','t','h',' ','v','o','i','d',' ','r','e',
-  't','u','r','n',' ','v','a','l','u','e',' ','c','a','n',#039,
-  't',' ','r','e','t','u','r','n',' ','a','n','y',' ','v','a',
-  'l','u','e',#000,'E','_','c','o','n','s','t','r','u','c','t',
-  'o','r','s',' ','a','n','d',' ','d','e','s','t','r','u','c',
-  't','o','r','s',' ','m','u','s','t',' ','b','e',' ','m','e',
-  't','h','o','d','s',#000,'W','_','A','u','t','o','m','a','t',
-  'i','c',' ','t','y','p','e',' ','c','o','n','v','e','r','s',
-  'i','o','n',' ','f','r','o','m',' ','f','l','o','a','t','i',
-  'n','g',' ','t','y','p','e',' ','t','o',' ','C','O','M','P',
-  ' ','w','h','i','c','h',' ','i','s',' ','a','n',' ','i','n',
-  't','e','g','e','r',' ','t','y','p','e',#000,'E','_','O','p',
-  'e','r','a','t','o','r',' ','i','s',' ','n','o','t',' ','o',
-  'v','e','r','l','o','a','d','e','d',#000,'E','_','V','a','r',
-  'i','a','b','l','e',' ','o','r',' ','t','y','p','e',' ','i',
-  'n','d','e','n','t','i','f','i','e','r',' ','e','x','p','e',
-  'c','t','e','d',#000,'E','_','R','e','-','r','a','i','s','e',
-  ' ','i','s','n',#039,'t',' ','p','o','s','s','i','b','l','e',
-  ' ','t','h','e','r','e',#000,'E','_','T','h','e',' ','e','x',
-  't','e','n','d','e','d',' ','s','y','n','t','a','x',' ','o',
-  'f',' ','n','e','w',' ','o','r',' ','d','i','s','p','o','s',
-  'e',' ','i','s','n',#039,'t',' ','a','l','l','o','w','e','d',
-  ' ','f','o','r',' ','a',' ','c','l','a','s','s',#000,'E','_',
-  'A','s','s','e','m','b','l','e','r',' ','i','n','c','o','m',
-  'p','a','t','i','b','l','e',' ','w','i','t','h',' ','f','u',
-  'n','c','t','i','o','n',' ','r','e','t','u','r','n',' ','v',
-  'a','l','u','e',#000,'E','_','P','r','o','c','e','d','u','r',
-  'e',' ','o','v','e','r','l','o','a','d','i','n','g',' ','i',
-  's',' ','s','w','i','t','c','h','e','d',' ','o','f','f',#000,
-  'E','_','I','t',' ','i','s',' ','n','o','t',' ','p','o','s',
-  's','i','b','l','e',' ','t','o',' ','o','v','e','r','l','o',
-  'a','d',' ','t','h','i','s',' ','o','p','e','r','a','t','o',
-  'r',' ','(','o','v','e','r','l','o','a','d',' ','=',' ','i',
-  'n','s','t','e','a','d',')',#000,'E','_','C','o','m','p','a',
-  'r','a','t','i','v','e',' ','o','p','e','r','a','t','o','r',
-  ' ','m','u','s','t',' ','r','e','t','u','r','n',' ','a',' ',
-  'b','o','o','l','e','a','n',' ','v','a','l','u','e',#000,'E',
-  '_','O','n','l','y',' ','v','i','r','t','u','a','l',' ','m',
-  'e','t','h','o','d','s',' ','c','a','n',' ','b','e',' ','a',
-  'b','s','t','r','a','c','t',#000,'F','_','U','s','e',' ','o',
-  'f',' ','u','n','s','u','p','p','o','r','t','e','d',' ','f',
-  'e','a','t','u','r','e','!',#000,'E','_','T','h','e',' ','m',
-  'i','x',' ','o','f',' ','C','L','A','S','S','E','S',' ','a',
-  'n','d',' ','O','B','J','E','C','T','S',' ','i','s','n',#039,
-  't',' ','a','l','l','o','w','e','d',#000,'W','_','U','n','k',
-  'n','o','w','n',' ','p','r','o','c','e','d','u','r','e',' ',
-  'd','i','r','e','c','t','i','v','e',' ','h','a','d',' ','t',
-  'o',' ','b','e',' ','i','g','n','o','r','e','d',':',' ','$',
-  '1',#000,'E','_','a','b','s','o','l','u','t','e',' ','c','a',
-  'n',' ','o','n','l','y',' ','b','e',' ','a','s','s','o','c',
-  'i','a','t','e','d',' ','t','o',' ','O','N','E',' ','v','a',
-  'r','i','a','b','l','e',#000,'E','_','a','b','s','o','l','u',
-  't','e',' ','c','a','n',' ','o','n','l','y',' ','b','e',' ',
-  'a','s','s','o','c','i','a','t','e','d',' ','a',' ','v','a',
-  'r',' ','o','r',' ','c','o','n','s','t',#000,'E','_','A','b',
-  't','r','a','c','t',' ','m','e','t','h','o','d','s',' ','s',
-  'h','o','u','l','d','n',#039,'t',' ','h','a','v','e',' ','a',
-  'n','y',' ','d','e','f','i','n','i','t','i','o','n',' ','(',
-  'w','i','t','h',' ','f','u','n','c','t','i','o','n',' ','b',
-  'o','d','y',')',#000,'E','_','T','h','i','s',' ','o','v','e',
-  'r','l','o','a','d','e','d',' ','f','u','n','c','t','i','o',
-  'n',' ','c','a','n',#039,'t',' ','b','e',' ','l','o','c','a',
-  'l',' ','(','m','u','s','t',' ','b','e',' ','e','x','p','o',
-  'r','t','e','d',')',#000,'E','_','s','u','c','c',' ','o','r',
-  ' ','p','r','e','d',' ','o','n',' ','e','n','u','m','s',' ',
-  'w','i','t','h',' ','a','s','s','i','g','n','m','e','n','t',
-  's',' ','n','o','t',' ','p','o','s','s','i','b','l','e',#000,
-  'W','_','V','i','r','t','u','a','l',' ','m','e','t','h','o',
-  'd','s',' ','a','r','e',' ','u','s','e','d',' ','w','i','t',
-  'h','o','u','t',' ','a',' ','c','o','n','s','t','r','u','c',
-  't','o','r',#000,'M','_','M','a','c','r','o',' ','d','e','f',
-  'i','n','e','d',':',' ','$','1',#000,'M','_','M','a','c','r',
-  'o',' ','u','n','d','e','f','i','n','e','d',':',' ','$','1',
-  #000,'M','_','M','a','c','r','o',' ','$','1',' ','s','e','t',
-  ' ','t','o',' ','$','2',#000,'I','_','C','o','m','p','i','l',
-  'i','n','g',' ','$','1',#000,'D','_','C','o','m','p','i','l',
-  'i','n','g',' ','$','1',' ','f','o','r',' ','t','h','e',' ',
-  's','e','c','o','n','d',' ','t','i','m','e',#000,'E','_','A',
-  'r','r','a','y',' ','p','r','o','p','e','r','t','i','e','s',
-  ' ','a','r','e','n',#039,'t',' ','a','l','l','o','w','e','d',
-  ' ','a','t',' ','t','h','i','s',' ','p','o','i','n','t',#000,
-  'E','_','N','o',' ','p','r','o','p','e','r','t','y',' ','f',
-  'o','u','n','d',' ','t','o',' ','o','v','e','r','r','i','d',
-  'e',#000,'E','_','O','n','l','y',' ','o','n','e',' ','d','e',
-  'f','a','u','l','t',' ','p','r','o','p','e','r','t','y',' ',
-  'i','s',' ','a','l','l','o','w','e','d',',',' ','f','o','u',
-  'n','d',' ','i','n','h','e','r','i','t','e','d',' ','d','e',
-  'f','a','u','l','t',' ','p','r','o','p','e','r','t','y',' ',
-  'i','n',' ','c','l','a','s','s',' ','%','1',#000,'E','_','T',
-  'h','e',' ','d','e','f','a','u','l','t',' ','p','r','o','p',
-  'e','r','t','y',' ','m','u','s','t',' ','b','e',' ','a','n',
-  ' ','a','r','r','a','y',' ','p','r','o','p','e','r','t','y',
-  #000,'E','_','V','i','r','t','u','a','l',' ','c','o','n','s',
-  't','r','u','c','t','o','r','s',' ','a','r','e',' ','o','n',
-  'l','y',' ','s','u','p','p','o','r','t','e','d',' ','i','n',
-  ' ','c','l','a','s','s',' ','o','b','j','e','c','t',' ','m',
-  'o','d','e','l',#000,'E','_','N','o',' ','d','e','f','a','u',
-  'l','t',' ','p','r','o','p','e','r','t','y',' ','a','v','a',
-  'i','l','a','b','l','e',#000,'N','_','L','o','c','a','l',' ',
-  'v','a','r','i','a','b','l','e',' ','$','1',' ','d','o','e',
-  's','n',#039,'t',' ','s','e','e','m',' ','t','o',' ','b','e',
-  ' ','i','n','i','t','i','a','l','i','z','e','d',' ','y','e',
-  't',' ','!',#000,'E','_','I','d','e','n','t','i','f','i','e',
-  'r',' ','n','o','t',' ','f','o','u','n','d',' ','$','1',#000,
-  'F','_','I','n','t','e','r','n','a','l',' ','E','r','r','o',
-  'r',' ','i','n',' ','S','y','m','T','a','b','l','e','S','t',
-  'a','c','k','(',')',#000,'E','_','D','u','p','l','i','c','a',
-  't','e',' ','i','d','e','n','t','i','f','i','e','r',' ','$',
-  '1',#000,'E','_','U','n','k','n','o','w','n',' ','i','d','e',
-  'n','t','i','f','i','e','r',' ','$','1',#000,'E','_','F','o',
-  'r','w','a','r','d',' ','d','e','c','l','a','r','a','t','i',
-  'o','n',' ','n','o','t',' ','s','o','l','v','e','d',':',' ',
-  '$','1',#000,'F','_','I','d','e','n','t','i','f','i','e','r',
-  ' ','t','y','p','e',' ','a','l','r','e','a','d','y',' ','d',
-  'e','f','i','n','e','d',' ','a','s',' ','t','y','p','e',#000,
-  'E','_','T','y','p','e',' ','i','d','e','n','t','i','f','i',
-  'e','r',' ','e','x','p','e','c','t','e','d',#000,'E','_','T',
-  'y','p','e',' ','m','i','s','m','a','t','c','h',#000,'E','_',
-  'E','r','r','o','r',' ','i','n',' ','t','y','p','e',' ','d',
-  'e','f','e','n','i','t','i','o','n',#000,'E','_','T','y','p',
-  'e',' ','i','d','e','n','t','i','f','i','e','r',' ','n','o',
-  't',' ','d','e','f','i','n','e','d',#000,'E','_','O','n','l',
-  'y',' ','s','t','a','t','i','c',' ','v','a','r','i','a','b',
-  'l','e','s',' ','c','a','n',' ','b','e',' ','u','s','e','d',
-  ' ','i','n',' ','s','t','a','t','i','c',' ','m','e','t','h',
-  'o','d','s',' ','o','r',' ','o','u','t','s','i','d','e',' ',
-  'm','e','t','h','o','d','s',#000,'E','_','I','n','v','a','l',
-  'i','d',' ','c','a','l','l',' ','t','o',' ','t','v','a','r',
-  's','y','m','.','m','a','n','g','l','e','d','n','a','m','e',
-  '(',')',#000,'F','_','r','e','c','o','r','d',' ','o','r',' ',
-  'c','l','a','s','s',' ','t','y','p','e',' ','e','x','p','e',
-  'c','t','e','d',#000,'E','_','T','o',' ','g','e','n','e','r',
-  'a','t','e',' ','a','n',' ','i','n','s','t','a','n','c','e',
-  ' ','o','f',' ','a',' ','c','l','a','s','s',' ','o','r',' ',
-  'a','n',' ','o','b','j','e','c','t',' ','w','i','t','h',' ',
-  'a','n',' ','a','b','t','r','a','c','t',' ','m','e','t','h',
-  'o','d',' ','i','s','n',#039,'t',' ','a','l','l','o','w','e',
-  'd',#000,'E','_','L','a','b','e','l',' ','n','o','t',' ','d',
-  'e','f','i','n','e','d',' ','$','1',#000,'E','_','I','l','l',
-  'e','g','a','l',' ','l','a','b','e','l',' ','d','e','c','l',
-  'a','r','a','t','i','o','n',#000,'E','_','G','O','T','O',' ',
-  'u','n','d',' ','L','A','B','E','L',' ','a','r','e',' ','n',
-  'o','t',' ','s','u','p','p','o','r','t','e','d',' ','(','u',
-  's','e',' ','c','o','m','m','a','n','d',' ','l','i','n','e',
-  ' ','s','w','i','t','c','h',' ','-','S','g',')',#000,'E','_',
-  'L','a','b','e','l',' ','n','o','t',' ','f','o','u','n','d',
+  'n','t','s',#000,'W','_','U','s','i','n','g',' ','/',' ','w',
+  'i','l','l',' ','g','i','v','e',' ','a',' ','f','l','o','a',
+  't','i','n','g',' ','p','o','i','n','t',' ','r','e','s','u',
+  'l','t',',',' ','u','s','e',' ','D','I','V',' ','i','n','s',
+  't','e','a','d',' ','t','o',' ','g','e','t',' ','a','n',' ',
+  'i','n','t','e','g','e','r',' ','r','e','s','u','l','t',#000,
+  'E','_','I','l','l','e','g','a','l',' ','o','r','d','e','r',
+  ' ','o','f',' ','r','e','c','o','r','d',' ','e','l','e','m',
+  'e','n','t','s',#000,'E','_','E','x','p','r','e','s','s','i',
+  'o','n',' ','t','y','p','e',' ','m','u','s','t',' ','b','y',
+  ' ','c','l','a','s','s',' ','o','r',' ','r','e','c','o','r',
+  'd',' ','t','y','p','e',#000,'E','_','F','u','n','c','t','i',
+  'o','n','s',' ','w','i','t','h',' ','v','o','i','d',' ','r',
+  'e','t','u','r','n',' ','v','a','l','u','e',' ','c','a','n',
+  #039,'t',' ','r','e','t','u','r','n',' ','a','n','y',' ','v',
+  'a','l','u','e',#000,'E','_','c','o','n','s','t','r','u','c',
+  't','o','r','s',' ','a','n','d',' ','d','e','s','t','r','u',
+  'c','t','o','r','s',' ','m','u','s','t',' ','b','e',' ','m',
+  'e','t','h','o','d','s',#000,'W','_','A','u','t','o','m','a',
+  't','i','c',' ','t','y','p','e',' ','c','o','n','v','e','r',
+  's','i','o','n',' ','f','r','o','m',' ','f','l','o','a','t',
+  'i','n','g',' ','t','y','p','e',' ','t','o',' ','C','O','M',
+  'P',' ','w','h','i','c','h',' ','i','s',' ','a','n',' ','i',
+  'n','t','e','g','e','r',' ','t','y','p','e',#000,'E','_','O',
+  'p','e','r','a','t','o','r',' ','i','s',' ','n','o','t',' ',
+  'o','v','e','r','l','o','a','d','e','d',#000,'E','_','V','a',
+  'r','i','a','b','l','e',' ','o','r',' ','t','y','p','e',' ',
+  'i','n','d','e','n','t','i','f','i','e','r',' ','e','x','p',
+  'e','c','t','e','d',#000,'E','_','R','e','-','r','a','i','s',
+  'e',' ','i','s','n',#039,'t',' ','p','o','s','s','i','b','l',
+  'e',' ','t','h','e','r','e',#000,'E','_','T','h','e',' ','e',
+  'x','t','e','n','d','e','d',' ','s','y','n','t','a','x',' ',
+  'o','f',' ','n','e','w',' ','o','r',' ','d','i','s','p','o',
+  's','e',' ','i','s','n',#039,'t',' ','a','l','l','o','w','e',
+  'd',' ','f','o','r',' ','a',' ','c','l','a','s','s',#000,'E',
+  '_','A','s','s','e','m','b','l','e','r',' ','i','n','c','o',
+  'm','p','a','t','i','b','l','e',' ','w','i','t','h',' ','f',
+  'u','n','c','t','i','o','n',' ','r','e','t','u','r','n',' ',
+  'v','a','l','u','e',#000,'E','_','P','r','o','c','e','d','u',
+  'r','e',' ','o','v','e','r','l','o','a','d','i','n','g',' ',
+  'i','s',' ','s','w','i','t','c','h','e','d',' ','o','f','f',
+  #000,'E','_','I','t',' ','i','s',' ','n','o','t',' ','p','o',
+  's','s','i','b','l','e',' ','t','o',' ','o','v','e','r','l',
+  'o','a','d',' ','t','h','i','s',' ','o','p','e','r','a','t',
+  'o','r',' ','(','o','v','e','r','l','o','a','d',' ','=',' ',
+  'i','n','s','t','e','a','d',')',#000,'E','_','C','o','m','p',
+  'a','r','a','t','i','v','e',' ','o','p','e','r','a','t','o',
+  'r',' ','m','u','s','t',' ','r','e','t','u','r','n',' ','a',
+  ' ','b','o','o','l','e','a','n',' ','v','a','l','u','e',#000,
+  'E','_','O','n','l','y',' ','v','i','r','t','u','a','l',' ',
+  'm','e','t','h','o','d','s',' ','c','a','n',' ','b','e',' ',
+  'a','b','s','t','r','a','c','t',#000,'F','_','U','s','e',' ',
+  'o','f',' ','u','n','s','u','p','p','o','r','t','e','d',' ',
+  'f','e','a','t','u','r','e','!',#000,'E','_','T','h','e',' ',
+  'm','i','x',' ','o','f',' ','C','L','A','S','S','E','S',' ',
+  'a','n','d',' ','O','B','J','E','C','T','S',' ','i','s','n',
+  #039,'t',' ','a','l','l','o','w','e','d',#000,'W','_','U','n',
+  'k','n','o','w','n',' ','p','r','o','c','e','d','u','r','e',
+  ' ','d','i','r','e','c','t','i','v','e',' ','h','a','d',' ',
+  't','o',' ','b','e',' ','i','g','n','o','r','e','d',':',' ',
+  '$','1',#000,'E','_','a','b','s','o','l','u','t','e',' ','c',
+  'a','n',' ','o','n','l','y',' ','b','e',' ','a','s','s','o',
+  'c','i','a','t','e','d',' ','t','o',' ','O','N','E',' ','v',
+  'a','r','i','a','b','l','e',#000,'E','_','a','b','s','o','l',
+  'u','t','e',' ','c','a','n',' ','o','n','l','y',' ','b','e',
+  ' ','a','s','s','o','c','i','a','t','e','d',' ','a',' ','v',
+  'a','r',' ','o','r',' ','c','o','n','s','t',#000,'E','_','A',
+  'b','t','r','a','c','t',' ','m','e','t','h','o','d','s',' ',
+  's','h','o','u','l','d','n',#039,'t',' ','h','a','v','e',' ',
+  'a','n','y',' ','d','e','f','i','n','i','t','i','o','n',' ',
+  '(','w','i','t','h',' ','f','u','n','c','t','i','o','n',' ',
+  'b','o','d','y',')',#000,'E','_','T','h','i','s',' ','o','v',
+  'e','r','l','o','a','d','e','d',' ','f','u','n','c','t','i',
+  'o','n',' ','c','a','n',#039,'t',' ','b','e',' ','l','o','c',
+  'a','l',' ','(','m','u','s','t',' ','b','e',' ','e','x','p',
+  'o','r','t','e','d',')',#000,'E','_','s','u','c','c',' ','o',
+  'r',' ','p','r','e','d',' ','o','n',' ','e','n','u','m','s',
+  ' ','w','i','t','h',' ','a','s','s','i','g','n','m','e','n',
+  't','s',' ','n','o','t',' ','p','o','s','s','i','b','l','e',
+  #000,'W','_','V','i','r','t','u','a','l',' ','m','e','t','h',
+  'o','d','s',' ','a','r','e',' ','u','s','e','d',' ','w','i',
+  't','h','o','u','t',' ','a',' ','c','o','n','s','t','r','u',
+  'c','t','o','r',#000,'M','_','M','a','c','r','o',' ','d','e',
+  'f','i','n','e','d',':',' ','$','1',#000,'M','_','M','a','c',
+  'r','o',' ','u','n','d','e','f','i','n','e','d',':',' ','$',
+  '1',#000,'M','_','M','a','c','r','o',' ','$','1',' ','s','e',
+  't',' ','t','o',' ','$','2',#000,'I','_','C','o','m','p','i',
+  'l','i','n','g',' ','$','1',#000,'D','_','C','o','m','p','i',
+  'l','i','n','g',' ','$','1',' ','f','o','r',' ','t','h','e',
+  ' ','s','e','c','o','n','d',' ','t','i','m','e',#000,'E','_',
+  'A','r','r','a','y',' ','p','r','o','p','e','r','t','i','e',
+  's',' ','a','r','e','n',#039,'t',' ','a','l','l','o','w','e',
+  'd',' ','a','t',' ','t','h','i','s',' ','p','o','i','n','t',
+  #000,'E','_','N','o',' ','p','r','o','p','e','r','t','y',' ',
+  'f','o','u','n','d',' ','t','o',' ','o','v','e','r','r','i',
+  'd','e',#000,'E','_','O','n','l','y',' ','o','n','e',' ','d',
+  'e','f','a','u','l','t',' ','p','r','o','p','e','r','t','y',
+  ' ','i','s',' ','a','l','l','o','w','e','d',',',' ','f','o',
+  'u','n','d',' ','i','n','h','e','r','i','t','e','d',' ','d',
+  'e','f','a','u','l','t',' ','p','r','o','p','e','r','t','y',
+  ' ','i','n',' ','c','l','a','s','s',' ','%','1',#000,'E','_',
+  'T','h','e',' ','d','e','f','a','u','l','t',' ','p','r','o',
+  'p','e','r','t','y',' ','m','u','s','t',' ','b','e',' ','a',
+  'n',' ','a','r','r','a','y',' ','p','r','o','p','e','r','t',
+  'y',#000,'E','_','V','i','r','t','u','a','l',' ','c','o','n',
+  's','t','r','u','c','t','o','r','s',' ','a','r','e',' ','o',
+  'n','l','y',' ','s','u','p','p','o','r','t','e','d',' ','i',
+  'n',' ','c','l','a','s','s',' ','o','b','j','e','c','t',' ',
+  'm','o','d','e','l',#000,'E','_','N','o',' ','d','e','f','a',
+  'u','l','t',' ','p','r','o','p','e','r','t','y',' ','a','v',
+  'a','i','l','a','b','l','e',#000,'N','_','L','o','c','a','l',
+  ' ','v','a','r','i','a','b','l','e',' ','$','1',' ','d','o',
+  'e','s','n',#039,'t',' ','s','e','e','m',' ','t','o',' ','b',
+  'e',' ','i','n','i','t','i','a','l','i','z','e','d',' ','y',
+  'e','t',' ','!',#000,'E','_','I','d','e','n','t','i','f','i',
+  'e','r',' ','n','o','t',' ','f','o','u','n','d',' ','$','1',
+  #000,'F','_','I','n','t','e','r','n','a','l',' ','E','r','r',
+  'o','r',' ','i','n',' ','S','y','m','T','a','b','l','e','S',
+  't','a','c','k','(',')',#000,'E','_','D','u','p','l','i','c',
+  'a','t','e',' ','i','d','e','n','t','i','f','i','e','r',' ',
+  '$','1',#000,'E','_','U','n','k','n','o','w','n',' ','i','d',
+  'e','n','t','i','f','i','e','r',' ','$','1',#000,'E','_','F',
+  'o','r','w','a','r','d',' ','d','e','c','l','a','r','a','t',
+  'i','o','n',' ','n','o','t',' ','s','o','l','v','e','d',':',
+  ' ','$','1',#000,'F','_','I','d','e','n','t','i','f','i','e',
+  'r',' ','t','y','p','e',' ','a','l','r','e','a','d','y',' ',
+  'd','e','f','i','n','e','d',' ','a','s',' ','t','y','p','e',
+  #000,'E','_','T','y','p','e',' ','i','d','e','n','t','i','f',
+  'i','e','r',' ','e','x','p','e','c','t','e','d',#000,'E','_',
+  'T','y','p','e',' ','m','i','s','m','a','t','c','h',#000,'E',
+  '_','E','r','r','o','r',' ','i','n',' ','t','y','p','e',' ',
+  'd','e','f','e','n','i','t','i','o','n',#000,'E','_','T','y',
+  'p','e',' ','i','d','e','n','t','i','f','i','e','r',' ','n',
+  'o','t',' ','d','e','f','i','n','e','d',#000,'E','_','O','n',
+  'l','y',' ','s','t','a','t','i','c',' ','v','a','r','i','a',
+  'b','l','e','s',' ','c','a','n',' ','b','e',' ','u','s','e',
+  'd',' ','i','n',' ','s','t','a','t','i','c',' ','m','e','t',
+  'h','o','d','s',' ','o','r',' ','o','u','t','s','i','d','e',
+  ' ','m','e','t','h','o','d','s',#000,'E','_','I','n','v','a',
+  'l','i','d',' ','c','a','l','l',' ','t','o',' ','t','v','a',
+  'r','s','y','m','.','m','a','n','g','l','e','d','n','a','m',
+  'e','(',')',#000,'F','_','r','e','c','o','r','d',' ','o','r',
+  ' ','c','l','a','s','s',' ','t','y','p','e',' ','e','x','p',
+  'e','c','t','e','d',#000,'E','_','T','o',' ','g','e','n','e',
+  'r','a','t','e',' ','a','n',' ','i','n','s','t','a','n','c',
+  'e',' ','o','f',' ','a',' ','c','l','a','s','s',' ','o','r',
+  ' ','a','n',' ','o','b','j','e','c','t',' ','w','i','t','h',
+  ' ','a','n',' ','a','b','t','r','a','c','t',' ','m','e','t',
+  'h','o','d',' ','i','s','n',#039,'t',' ','a','l','l','o','w',
+  'e','d',#000,'E','_','L','a','b','e','l',' ','n','o','t',' ',
+  'd','e','f','i','n','e','d',' ','$','1',#000,'E','_','I','l',
+  'l','e','g','a','l',' ','l','a','b','e','l',' ','d','e','c',
+  'l','a','r','a','t','i','o','n',#000,'E','_','G','O','T','O',
+  ' ','u','n','d',' ','L','A','B','E','L',' ','a','r','e',' ',
+  'n','o','t',' ','s','u','p','p','o','r','t','e','d',' ','(',
+  'u','s','e',' ','c','o','m','m','a','n','d',' ','l','i','n',
+  'e',' ','s','w','i','t','c','h',' ','-','S','g',')',#000,'E',
+  '_','L','a','b','e','l',' ','n','o','t',' ','f','o','u','n',
+  'd',#000,'E','_','i','d','e','n','t','i','f','i','e','r',' ',
+  'i','s','n',#039,'t',' ','a',' ','l','a','b','e','l',#000,'E',
+  '_','l','a','b','e','l',' ','a','l','r','e','a','d','y',' ',
+  'd','e','f','i','n','e','d',#000,'E','_','i','l','l','e','g',
+  'a','l',' ','t','y','p','e',' ','d','e','c','l','a','r','a',
+  't','i','o','n',' ','o','f',' ','s','e','t',' ','e','l','e',
+  'm','e','n','t','s',#000,'E','_','F','o','r','w','a','r','d',
+  ' ','c','l','a','s','s',' ','d','e','f','i','n','i','t','i',
+  'o','n',' ','n','o','t',' ','r','e','s','o','l','v','e','d',
+  ' ','$','1',#000,'H','_','I','d','e','n','t','i','f','i','e',
+  'r',' ','n','o','t',' ','u','s','e','d',' ','$','1',',',' ',
+  'd','e','c','l','a','r','e','d',' ','i','n',' ','l','i','n',
+  'e',' ','$','2',#000,'E','_','S','e','t',' ','e','l','e','m',
+  'e','n','t','s',' ','a','r','e',' ','n','o','t',' ','c','o',
+  'm','p','a','t','i','b','l','e',#000,'E','_','S','e','t',' ',
+  't','y','p','e',' ','e','x','p','e','c','t','e','d',#000,'W',
+  '_','F','u','n','c','t','i','o','n',' ','r','e','s','u','l',
+  't',' ','d','o','e','s',' ','n','o','t',' ','s','e','e','m',
+  ' ','t','o',' ','b','e',' ','s','e','t',#000,'E','_','U','n',
+  'k','n','o','w','n',' ','f','i','e','l','d',' ','i','d','e',
+  'n','t','i','f','i','e','r',#000,'N','_','L','o','c','a','l',
+  ' ','v','a','r','i','a','b','l','e',' ','d','o','e','s',' ',
+  'n','o','t',' ','s','e','e','m',' ','t','o',' ','b','e',' ',
+  'i','n','i','t','i','a','l','i','z','e','d',':',' ','$','1',
   #000,'E','_','i','d','e','n','t','i','f','i','e','r',' ','i',
-  's','n',#039,'t',' ','a',' ','l','a','b','e','l',#000,'E','_',
-  'l','a','b','e','l',' ','a','l','r','e','a','d','y',' ','d',
-  'e','f','i','n','e','d',#000,'E','_','i','l','l','e','g','a',
-  'l',' ','t','y','p','e',' ','d','e','c','l','a','r','a','t',
-  'i','o','n',' ','o','f',' ','s','e','t',' ','e','l','e','m',
-  'e','n','t','s',#000,'E','_','F','o','r','w','a','r','d',' ',
-  'c','l','a','s','s',' ','d','e','f','i','n','i','t','i','o',
-  'n',' ','n','o','t',' ','r','e','s','o','l','v','e','d',' ',
-  '$','1',#000,'H','_','I','d','e','n','t','i','f','i','e','r',
-  ' ','n','o','t',' ','u','s','e','d',' ','$','1',',',' ','d',
-  'e','c','l','a','r','e','d',' ','i','n',' ','l','i','n','e',
-  ' ','$','2',#000,'E','_','S','e','t',' ','e','l','e','m','e',
-  'n','t','s',' ','a','r','e',' ','n','o','t',' ','c','o','m',
-  'p','a','t','i','b','l','e',#000,'E','_','S','e','t',' ','t',
-  'y','p','e',' ','e','x','p','e','c','t','e','d',#000,'W','_',
-  'F','u','n','c','t','i','o','n',' ','r','e','s','u','l','t',
-  ' ','d','o','e','s',' ','n','o','t',' ','s','e','e','m',' ',
-  't','o',' ','b','e',' ','s','e','t',#000,'E','_','U','n','k',
-  'n','o','w','n',' ','f','i','e','l','d',' ','i','d','e','n',
-  't','i','f','i','e','r',#000,'N','_','L','o','c','a','l',' ',
-  'v','a','r','i','a','b','l','e',' ','d','o','e','s',' ','n',
-  'o','t',' ','s','e','e','m',' ','t','o',' ','b','e',' ','i',
-  'n','i','t','i','a','l','i','z','e','d',':',' ','$','1',#000,
-  'E','_','i','d','e','n','t','i','f','i','e','r',' ','i','d',
-  'e','n','t','s',' ','n','o',' ','m','e','m','b','e','r',#000,
-  'E','_','B','R','E','A','K',' ','n','o','t',' ','a','l','l',
-  'o','w','e','d',#000,'E','_','C','O','N','T','I','N','U','E',
-  ' ','n','o','t',' ','a','l','l','o','w','e','d',#000,'E','_',
-  'E','x','p','r','e','s','s','i','o','n',' ','t','o','o',' ',
-  'c','o','m','p','l','i','c','a','t','e','d',' ','-',' ','F',
-  'P','U',' ','s','t','a','c','k',' ','o','v','e','r','f','l',
-  'o','w',#000,'E','_','I','l','l','e','g','a','l',' ','e','x',
-  'p','r','e','s','s','i','o','n',#000,'E','_','I','n','v','a',
-  'l','i','d',' ','i','n','t','e','g','e','r',#000,'E','_','I',
-  'l','l','e','g','a','l',' ','q','u','a','l','i','f','i','e',
-  'r',#000,'E','_','H','i','g','h',' ','r','a','n','g','e',' ',
-  'l','i','m','i','t',' ','<',' ','l','o','w',' ','r','a','n',
-  'g','e',' ','l','i','m','i','t',#000,'E','_','I','l','l','e',
-  'g','a','l',' ','c','o','u','n','t','e','r',' ','v','a','r',
-  'i','a','b','l','e',#000,'E','_','C','a','n',#039,'t',' ','d',
-  'e','t','e','r','m','i','n','e',' ','w','h','i','c','h',' ',
-  'o','v','e','r','l','o','a','d','e','d',' ','f','u','n','c',
-  't','i','o','n',' ','t','o',' ','c','a','l','l',#000,'E','_',
-  'P','a','r','a','m','e','t','e','r',' ','l','i','s','t',' ',
-  's','i','z','e',' ','e','x','c','e','e','d','s',' ','6','5',
-  '5','3','5',' ','b','y','t','e','s',#000,'E','_','I','l','l',
-  'e','g','a','l',' ','t','y','p','e',' ','c','o','n','v','e',
-  'r','s','i','o','n',#000,'E','_','F','i','l','e',' ','t','y',
-  'p','e','s',' ','m','u','s','t',' ','b','e',' ','v','a','r',
-  ' ','p','a','r','a','m','e','t','e','r','s',#000,'E','_','T',
-  'h','e',' ','u','s','e',' ','o','f',' ','a',' ','f','a','r',
-  ' ','p','o','i','n','t','e','r',' ','i','s','n',#039,'t',' ',
-  'a','l','l','o','w','e','d',' ','t','h','e','r','e',#000,'E',
-  '_','i','l','l','e','g','a','l',' ','c','a','l','l',' ','b',
-  'y',' ','r','e','f','e','r','e','n','c','e',' ','p','a','r',
-  'a','m','e','t','e','r','s',#000,'E','_','E','X','P','O','R',
-  'T',' ','d','e','c','l','a','r','e','d',' ','f','u','n','c',
-  't','i','o','n','s',' ','c','a','n',#039,'t',' ','b','e',' ',
-  'c','a','l','l','e','d',#000,'W','_','P','o','s','s','i','b',
-  'l','e',' ','i','l','l','e','g','a','l',' ','c','a','l','l',
-  ' ','o','f',' ','c','o','n','s','t','r','u','c','t','o','r',
-  ' ','o','r',' ','d','e','s','t','r','u','c','t','o','r',' ',
-  '(','d','o','e','s','n',#039,'t',' ','m','a','t','c','h',' ',
-  't','o',' ','t','h','i','s',' ','c','o','n','t','e','x','t',
-  ')',#000,'N','_','I','n','e','f','f','i','c','i','e','n','t',
-  ' ','c','o','d','e',#000,'W','_','u','n','r','e','a','c','h',
-  'a','b','l','e',' ','c','o','d','e',#000,'E','_','p','r','o',
-  'c','e','d','u','r','e',' ','c','a','l','l',' ','w','i','t',
-  'h',' ','s','t','a','c','k','f','r','a','m','e',' ','E','S',
-  'P','/','S','P',#000,'E','_','A','b','s','t','r','a','c','t',
-  ' ','m','e','t','h','o','d','s',' ','c','a','n',#039,'t',' ',
-  'b','e',' ','c','a','l','l','e','d',' ','d','i','r','e','c',
-  't','l','y',#000,'F','_','I','n','t','e','r','n','a','l',' ',
-  'E','r','r','o','r',' ','i','n',' ','g','e','t','f','l','o',
-  'a','t','r','e','g','(',')',',',' ','a','l','l','o','c','a',
-  't','i','o','n',' ','f','a','i','l','u','r','e',#000,'F','_',
-  'U','n','k','n','o','w','n',' ','f','l','o','a','t',' ','t',
-  'y','p','e',#000,'F','_','S','e','c','o','n','d','V','e','c',
-  'n','(',')',' ','b','a','s','e',' ','d','e','f','i','n','e',
-  'd',' ','t','w','i','c','e',#000,'F','_','E','x','t','e','n',
-  'd','e','d',' ','c','g','6','8','k',' ','n','o','t',' ','s',
-  'u','p','p','o','r','t','e','d',#000,'F','_','3','2','-','b',
-  'i','t',' ','u','n','s','i','g','n','e','d',' ','n','o','t',
-  ' ','s','u','p','p','o','r','t','e','d',' ','i','n',' ','M',
-  'C','6','8','0','0','0',' ','m','o','d','e',#000,'F','_','I',
-  'n','t','e','r','n','a','l',' ','E','r','r','o','r',' ','i',
-  'n',' ','s','e','c','o','n','d','i','n','l','i','n','e','(',
-  ')',#000,'D','_','R','e','g','i','s','t','e','r',' ','$','1',
-  ' ','w','e','i','g','h','t',' ','$','2',' ','$','3',#000,'E',
-  '_','S','t','a','c','k',' ','l','i','m','i','t',' ','e','x',
-  'c','e','d','e','e','d',' ','i','n',' ','l','o','c','a','l',
-  ' ','r','o','u','t','i','n','e',#000,'D','_','S','t','a','c',
-  'k',' ','f','r','a','m','e',' ','i','s',' ','o','m','i','t',
-  'e','d',#000,'F','_','D','i','v','i','d','e',' ','b','y',' ',
-  'z','e','r','o',' ','i','n',' ','a','s','m',' ','e','v','a',
-  'l','u','a','t','o','r',#000,'F','_','E','v','a','l','u','a',
-  't','o','r',' ','s','t','a','c','k',' ','o','v','e','r','f',
-  'l','o','w',#000,'F','_','E','v','a','l','u','a','t','o','r',
-  ' ','s','t','a','c','k',' ','u','n','d','e','r','f','l','o',
-  'w',#000,'F','_','I','n','v','a','l','i','d',' ','n','u','m',
-  'e','r','i','c',' ','f','o','r','m','a','t',' ','i','n',' ',
-  'a','s','m',' ','e','v','a','l','u','a','t','o','r',#000,'F',
-  '_','I','n','v','a','l','i','d',' ','O','p','e','r','a','t',
-  'o','r',' ','i','n',' ','a','s','m',' ','e','v','a','l','u',
-  'a','t','o','r',#000,'F','_','U','n','k','n','o','w','n',' ',
-  'e','r','r','o','r',' ','i','n',' ','a','s','m',' ','e','v',
-  'a','l','u','a','t','o','r',#000,'W','_','I','n','v','a','l',
-  'i','d',' ','n','u','m','e','r','i','c',' ','v','a','l','u',
-  'e',#000,'E','_','e','s','c','a','p','e',' ','s','e','q','u',
-  'e','n','c','e',' ','i','g','n','o','r','e','d',':',' ','$',
-  '1',#000,'E','_','A','s','m',' ','s','y','n','t','a','x',' ',
-  'e','r','r','o','r',' ','-',' ','P','r','e','f','i','x',' ',
-  'n','o','t',' ','f','o','u','n','d',#000,'E','_','A','s','m',
-  ' ','s','y','n','t','a','x',' ','e','r','r','o','r',' ','-',
-  ' ','T','r','y','i','n','g',' ','t','o',' ','a','d','d',' ',
-  'm','o','r','e',' ','t','h','a','n',' ','o','n','e',' ','p',
-  'r','e','f','i','x',#000,'E','_','A','s','m',' ','s','y','n',
-  't','a','x',' ','e','r','r','o','r',' ','-',' ','O','p','c',
-  'o','d','e',' ','n','o','t',' ','f','o','u','n','d',#000,'E',
-  '_','I','n','v','a','l','i','d',' ','s','y','m','b','o','l',
-  ' ','r','e','f','e','r','e','n','c','e',#000,'W','_','C','a',
-  'l','l','i','n','g',' ','a','n',' ','o','v','e','r','l','o',
-  'a','d',' ','f','u','n','c','t','i','o','n',' ','i','n',' ',
-  'a','n',' ','a','s','m',#000,'E','_','C','o','n','s','t','a',
-  'n','t',' ','v','a','l','u','e',' ','o','u','t',' ','o','f',
-  ' ','b','o','u','n','d','s',#000,'E','_','N','o','n','-','l',
-  'a','b','e','l',' ','p','a','t','t','e','r','n',' ','c','o',
-  'n','t','a','i','n','s',' ','@',#000,'E','_','I','n','v','a',
-  'l','i','d',' ','O','p','e','r','a','n','d',':',' ','$','1',
-  #000,'W','_','O','v','e','r','r','i','d','e',' ','o','p','e',
-  'r','a','t','o','r',' ','n','o','t',' ','s','u','p','p','o',
-  'r','t','e','d',#000,'E','_','E','r','r','o','r',' ','i','n',
-  ' ','b','i','n','a','r','y',' ','c','o','n','s','t','a','n',
-  't',':',' ','$','1',#000,'E','_','E','r','r','o','r',' ','i',
-  'n',' ','o','c','t','a','l',' ','c','o','n','s','t','a','n',
-  't',':',' ','$','1',#000,'E','_','E','r','r','o','r',' ','i',
-  'n',' ','h','e','x','a','d','e','c','i','m','a','l',' ','c',
-  'o','n','s','t','a','n','t',':',' ','$','1',#000,'E','_','E',
-  'r','r','o','r',' ','i','n',' ','i','n','t','e','g','e','r',
-  ' ','c','o','n','s','t','a','n','t',':',' ','$','1',#000,'E',
-  '_','I','n','v','a','l','i','d',' ','l','a','b','e','l','e',
-  'd',' ','o','p','c','o','d','e',#000,'F','_','I','n','t','e',
-  'r','n','a','l',' ','e','r','r','o','r',' ','i','n',' ','F',
-  'i','n','d','t','y','p','e','(',')',#000,'E','_','I','n','v',
-  'a','l','i','d',' ','s','i','z','e',' ','f','o','r',' ','M',
-  'O','V','S','X','/','M','O','V','Z','X',#000,'E','_','1','6',
-  '-','b','i','t',' ','b','a','s','e',' ','i','n',' ','3','2',
-  '-','b','i','t',' ','s','e','g','m','e','n','t',#000,'E','_',
-  '1','6','-','b','i','t',' ','i','n','d','e','x',' ','i','n',
-  ' ','3','2','-','b','i','t',' ','s','e','g','m','e','n','t',
-  #000,'E','_','I','n','v','a','l','i','d',' ','O','p','c','o',
-  'd','e',#000,'E','_','C','o','n','s','t','a','n','t',' ','r',
-  'e','f','e','r','e','n','c','e',' ','n','o','t',' ','a','l',
-  'l','o','w','e','d',#000,'W','_','F','w','a','i','t',' ','c',
-  'a','n',' ','c','a','u','s','e',' ','e','m','u','l','a','t',
-  'i','o','n',' ','p','r','o','b','l','e','m','s',' ','w','i',
-  't','h',' ','e','m','u','3','8','7',#000,'E','_','I','n','v',
-  'a','l','i','d',' ','c','o','m','b','i','n','a','t','i','o',
-  'n',' ','o','f',' ','o','p','c','o','d','e',' ','a','n','d',
-  ' ','o','p','e','r','a','n','d','s',#000,'W','_','O','p','c',
-  'o','d','e',' ','$','1',' ','n','o','t',' ','i','n',' ','t',
-  'a','b','l','e',',',' ','o','p','e','r','a','n','d','s',' ',
-  'n','o','t',' ','c','h','e','c','k','e','d',#000,'F','_','I',
-  'n','t','e','r','n','a','l',' ','E','r','r','o','r',' ','i',
-  'n',' ','C','o','n','c','a','t','O','p','c','o','d','e','(',
-  ')',#000,'E','_','I','n','v','a','l','i','d',' ','s','i','z',
-  'e',' ','i','n',' ','r','e','f','e','r','e','n','c','e',#000,
-  'E','_','I','n','v','a','l','i','d',' ','m','i','d','d','l',
-  'e',' ','s','i','z','e','d',' ','o','p','e','r','a','n','d',
-  #000,'E','_','I','n','v','a','l','i','d',' ','t','h','r','e',
-  'e',' ','o','p','e','r','a','n','d',' ','o','p','c','o','d',
-  'e',#000,'E','_','A','s','s','e','m','b','l','e','r',' ','s',
-  'y','n','t','a','x',' ','e','r','r','o','r',#000,'E','_','I',
-  'n','v','a','l','i','d',' ','o','p','e','r','a','n','d',' ',
-  't','y','p','e',#000,'E','_','S','e','g','m','e','n','t',' ',
-  'o','v','e','r','r','i','d','e','s',' ','n','o','t',' ','s',
-  'u','p','p','o','r','t','e','d',#000,'E','_','I','n','v','a',
-  'l','i','d',' ','c','o','n','s','t','a','n','t',' ','s','y',
-  'm','b','o','l',' ','$','1',#000,'F','_','I','n','t','e','r',
-  'n','a','l',' ','E','r','r','r','o','r',' ','c','o','n','v',
-  'e','r','t','i','n','g',' ','b','i','n','a','r','y',#000,'F',
-  '_','I','n','t','e','r','n','a','l',' ','E','r','r','r','o',
-  'r',' ','c','o','n','v','e','r','t','i','n','g',' ','h','e',
-  'x','a','d','e','c','i','m','a','l',#000,'F','_','I','n','t',
-  'e','r','n','a','l',' ','E','r','r','r','o','r',' ','c','o',
-  'n','v','e','r','t','i','n','g',' ','o','c','t','a','l',#000,
-  'E','_','I','n','v','a','l','i','d',' ','c','o','n','s','t',
-  'a','n','t',' ','e','x','p','r','e','s','s','i','o','n',#000,
-  'E','_','U','n','k','n','o','w','n',' ','i','d','e','n','t',
-  'i','f','i','e','r',':',' ','$','1',#000,'E','_','T','r','y',
-  'i','n','g',' ','t','o',' ','d','e','f','i','n','e',' ','a',
-  'n',' ','i','n','d','e','x',' ','r','e','g','i','s','t','e',
-  'r',' ','m','o','r','e',' ','t','h','a','n',' ','o','n','c',
-  'e',#000,'E','_','I','n','v','a','l','i','d',' ','f','i','e',
-  'l','d',' ','s','p','e','c','i','f','i','e','r',#000,'F','_',
+  'd','e','n','t','s',' ','n','o',' ','m','e','m','b','e','r',
+  #000,'E','_','B','R','E','A','K',' ','n','o','t',' ','a','l',
+  'l','o','w','e','d',#000,'E','_','C','O','N','T','I','N','U',
+  'E',' ','n','o','t',' ','a','l','l','o','w','e','d',#000,'E',
+  '_','E','x','p','r','e','s','s','i','o','n',' ','t','o','o',
+  ' ','c','o','m','p','l','i','c','a','t','e','d',' ','-',' ',
+  'F','P','U',' ','s','t','a','c','k',' ','o','v','e','r','f',
+  'l','o','w',#000,'E','_','I','l','l','e','g','a','l',' ','e',
+  'x','p','r','e','s','s','i','o','n',#000,'E','_','I','n','v',
+  'a','l','i','d',' ','i','n','t','e','g','e','r',#000,'E','_',
+  'I','l','l','e','g','a','l',' ','q','u','a','l','i','f','i',
+  'e','r',#000,'E','_','H','i','g','h',' ','r','a','n','g','e',
+  ' ','l','i','m','i','t',' ','<',' ','l','o','w',' ','r','a',
+  'n','g','e',' ','l','i','m','i','t',#000,'E','_','I','l','l',
+  'e','g','a','l',' ','c','o','u','n','t','e','r',' ','v','a',
+  'r','i','a','b','l','e',#000,'E','_','C','a','n',#039,'t',' ',
+  'd','e','t','e','r','m','i','n','e',' ','w','h','i','c','h',
+  ' ','o','v','e','r','l','o','a','d','e','d',' ','f','u','n',
+  'c','t','i','o','n',' ','t','o',' ','c','a','l','l',#000,'E',
+  '_','P','a','r','a','m','e','t','e','r',' ','l','i','s','t',
+  ' ','s','i','z','e',' ','e','x','c','e','e','d','s',' ','6',
+  '5','5','3','5',' ','b','y','t','e','s',#000,'E','_','I','l',
+  'l','e','g','a','l',' ','t','y','p','e',' ','c','o','n','v',
+  'e','r','s','i','o','n',#000,'E','_','F','i','l','e',' ','t',
+  'y','p','e','s',' ','m','u','s','t',' ','b','e',' ','v','a',
+  'r',' ','p','a','r','a','m','e','t','e','r','s',#000,'E','_',
+  'T','h','e',' ','u','s','e',' ','o','f',' ','a',' ','f','a',
+  'r',' ','p','o','i','n','t','e','r',' ','i','s','n',#039,'t',
+  ' ','a','l','l','o','w','e','d',' ','t','h','e','r','e',#000,
+  'E','_','i','l','l','e','g','a','l',' ','c','a','l','l',' ',
+  'b','y',' ','r','e','f','e','r','e','n','c','e',' ','p','a',
+  'r','a','m','e','t','e','r','s',#000,'E','_','E','X','P','O',
+  'R','T',' ','d','e','c','l','a','r','e','d',' ','f','u','n',
+  'c','t','i','o','n','s',' ','c','a','n',#039,'t',' ','b','e',
+  ' ','c','a','l','l','e','d',#000,'W','_','P','o','s','s','i',
+  'b','l','e',' ','i','l','l','e','g','a','l',' ','c','a','l',
+  'l',' ','o','f',' ','c','o','n','s','t','r','u','c','t','o',
+  'r',' ','o','r',' ','d','e','s','t','r','u','c','t','o','r',
+  ' ','(','d','o','e','s','n',#039,'t',' ','m','a','t','c','h',
+  ' ','t','o',' ','t','h','i','s',' ','c','o','n','t','e','x',
+  't',')',#000,'N','_','I','n','e','f','f','i','c','i','e','n',
+  't',' ','c','o','d','e',#000,'W','_','u','n','r','e','a','c',
+  'h','a','b','l','e',' ','c','o','d','e',#000,'E','_','p','r',
+  'o','c','e','d','u','r','e',' ','c','a','l','l',' ','w','i',
+  't','h',' ','s','t','a','c','k','f','r','a','m','e',' ','E',
+  'S','P','/','S','P',#000,'E','_','A','b','s','t','r','a','c',
+  't',' ','m','e','t','h','o','d','s',' ','c','a','n',#039,'t',
+  ' ','b','e',' ','c','a','l','l','e','d',' ','d','i','r','e',
+  'c','t','l','y',#000,'F','_','I','n','t','e','r','n','a','l',
+  ' ','E','r','r','o','r',' ','i','n',' ','g','e','t','f','l',
+  'o','a','t','r','e','g','(',')',',',' ','a','l','l','o','c',
+  'a','t','i','o','n',' ','f','a','i','l','u','r','e',#000,'F',
+  '_','U','n','k','n','o','w','n',' ','f','l','o','a','t',' ',
+  't','y','p','e',#000,'F','_','S','e','c','o','n','d','V','e',
+  'c','n','(',')',' ','b','a','s','e',' ','d','e','f','i','n',
+  'e','d',' ','t','w','i','c','e',#000,'F','_','E','x','t','e',
+  'n','d','e','d',' ','c','g','6','8','k',' ','n','o','t',' ',
+  's','u','p','p','o','r','t','e','d',#000,'F','_','3','2','-',
+  'b','i','t',' ','u','n','s','i','g','n','e','d',' ','n','o',
+  't',' ','s','u','p','p','o','r','t','e','d',' ','i','n',' ',
+  'M','C','6','8','0','0','0',' ','m','o','d','e',#000,'F','_',
   'I','n','t','e','r','n','a','l',' ','E','r','r','o','r',' ',
-  'i','n',' ','B','u','i','l','d','S','c','a','l','i','n','g',
-  '(',')',#000,'E','_','I','n','v','a','l','i','d',' ','s','c',
-  'a','l','i','n','g',' ','f','a','c','t','o','r',#000,'E','_',
-  'I','n','v','a','l','i','d',' ','s','c','a','l','i','n','g',
-  ' ','v','a','l','u','e',#000,'E','_','S','c','a','l','i','n',
-  'g',' ','v','a','l','u','e',' ','o','n','l','y',' ','a','l',
-  'l','o','w','e','d',' ','w','i','t','h',' ','i','n','d','e',
-  'x',#000,'E','_','I','n','v','a','l','i','d',' ','a','s','s',
-  'e','m','b','l','e','r',' ','s','y','n','t','a','x','.',' ',
-  'N','o',' ','r','e','f',' ','w','i','t','h',' ','b','r','a',
-  'c','k','e','t','s',')',#000,'E','_','E','x','p','r','e','s',
-  's','i','o','n','s',' ','o','f',' ','t','h','e',' ','f','o',
-  'r','m',' ','[','s','r','e','g',':','r','e','g','.','.','.',
-  ']',' ','a','r','e',' ','c','u','r','r','e','n','t','l','y',
-  ' ','n','o','t',' ','s','u','p','p','o','r','t','e','d',#000,
+  'i','n',' ','s','e','c','o','n','d','i','n','l','i','n','e',
+  '(',')',#000,'D','_','R','e','g','i','s','t','e','r',' ','$',
+  '1',' ','w','e','i','g','h','t',' ','$','2',' ','$','3',#000,
+  'E','_','S','t','a','c','k',' ','l','i','m','i','t',' ','e',
+  'x','c','e','d','e','e','d',' ','i','n',' ','l','o','c','a',
+  'l',' ','r','o','u','t','i','n','e',#000,'D','_','S','t','a',
+  'c','k',' ','f','r','a','m','e',' ','i','s',' ','o','m','i',
+  't','e','d',#000,'F','_','D','i','v','i','d','e',' ','b','y',
+  ' ','z','e','r','o',' ','i','n',' ','a','s','m',' ','e','v',
+  'a','l','u','a','t','o','r',#000,'F','_','E','v','a','l','u',
+  'a','t','o','r',' ','s','t','a','c','k',' ','o','v','e','r',
+  'f','l','o','w',#000,'F','_','E','v','a','l','u','a','t','o',
+  'r',' ','s','t','a','c','k',' ','u','n','d','e','r','f','l',
+  'o','w',#000,'F','_','I','n','v','a','l','i','d',' ','n','u',
+  'm','e','r','i','c',' ','f','o','r','m','a','t',' ','i','n',
+  ' ','a','s','m',' ','e','v','a','l','u','a','t','o','r',#000,
+  'F','_','I','n','v','a','l','i','d',' ','O','p','e','r','a',
+  't','o','r',' ','i','n',' ','a','s','m',' ','e','v','a','l',
+  'u','a','t','o','r',#000,'F','_','U','n','k','n','o','w','n',
+  ' ','e','r','r','o','r',' ','i','n',' ','a','s','m',' ','e',
+  'v','a','l','u','a','t','o','r',#000,'W','_','I','n','v','a',
+  'l','i','d',' ','n','u','m','e','r','i','c',' ','v','a','l',
+  'u','e',#000,'E','_','e','s','c','a','p','e',' ','s','e','q',
+  'u','e','n','c','e',' ','i','g','n','o','r','e','d',':',' ',
+  '$','1',#000,'E','_','A','s','m',' ','s','y','n','t','a','x',
+  ' ','e','r','r','o','r',' ','-',' ','P','r','e','f','i','x',
+  ' ','n','o','t',' ','f','o','u','n','d',#000,'E','_','A','s',
+  'm',' ','s','y','n','t','a','x',' ','e','r','r','o','r',' ',
+  '-',' ','T','r','y','i','n','g',' ','t','o',' ','a','d','d',
+  ' ','m','o','r','e',' ','t','h','a','n',' ','o','n','e',' ',
+  'p','r','e','f','i','x',#000,'E','_','A','s','m',' ','s','y',
+  'n','t','a','x',' ','e','r','r','o','r',' ','-',' ','O','p',
+  'c','o','d','e',' ','n','o','t',' ','f','o','u','n','d',#000,
+  'E','_','I','n','v','a','l','i','d',' ','s','y','m','b','o',
+  'l',' ','r','e','f','e','r','e','n','c','e',#000,'W','_','C',
+  'a','l','l','i','n','g',' ','a','n',' ','o','v','e','r','l',
+  'o','a','d',' ','f','u','n','c','t','i','o','n',' ','i','n',
+  ' ','a','n',' ','a','s','m',#000,'E','_','C','o','n','s','t',
+  'a','n','t',' ','v','a','l','u','e',' ','o','u','t',' ','o',
+  'f',' ','b','o','u','n','d','s',#000,'E','_','N','o','n','-',
+  'l','a','b','e','l',' ','p','a','t','t','e','r','n',' ','c',
+  'o','n','t','a','i','n','s',' ','@',#000,'E','_','I','n','v',
+  'a','l','i','d',' ','O','p','e','r','a','n','d',':',' ','$',
+  '1',#000,'W','_','O','v','e','r','r','i','d','e',' ','o','p',
+  'e','r','a','t','o','r',' ','n','o','t',' ','s','u','p','p',
+  'o','r','t','e','d',#000,'E','_','E','r','r','o','r',' ','i',
+  'n',' ','b','i','n','a','r','y',' ','c','o','n','s','t','a',
+  'n','t',':',' ','$','1',#000,'E','_','E','r','r','o','r',' ',
+  'i','n',' ','o','c','t','a','l',' ','c','o','n','s','t','a',
+  'n','t',':',' ','$','1',#000,'E','_','E','r','r','o','r',' ',
+  'i','n',' ','h','e','x','a','d','e','c','i','m','a','l',' ',
+  'c','o','n','s','t','a','n','t',':',' ','$','1',#000,'E','_',
+  'E','r','r','o','r',' ','i','n',' ','i','n','t','e','g','e',
+  'r',' ','c','o','n','s','t','a','n','t',':',' ','$','1',#000,
+  'E','_','I','n','v','a','l','i','d',' ','l','a','b','e','l',
+  'e','d',' ','o','p','c','o','d','e',#000,'F','_','I','n','t',
+  'e','r','n','a','l',' ','e','r','r','o','r',' ','i','n',' ',
+  'F','i','n','d','t','y','p','e','(',')',#000,'E','_','I','n',
+  'v','a','l','i','d',' ','s','i','z','e',' ','f','o','r',' ',
+  'M','O','V','S','X','/','M','O','V','Z','X',#000,'E','_','1',
+  '6','-','b','i','t',' ','b','a','s','e',' ','i','n',' ','3',
+  '2','-','b','i','t',' ','s','e','g','m','e','n','t',#000,'E',
+  '_','1','6','-','b','i','t',' ','i','n','d','e','x',' ','i',
+  'n',' ','3','2','-','b','i','t',' ','s','e','g','m','e','n',
+  't',#000,'E','_','I','n','v','a','l','i','d',' ','O','p','c',
+  'o','d','e',#000,'E','_','C','o','n','s','t','a','n','t',' ',
+  'r','e','f','e','r','e','n','c','e',' ','n','o','t',' ','a',
+  'l','l','o','w','e','d',#000,'W','_','F','w','a','i','t',' ',
+  'c','a','n',' ','c','a','u','s','e',' ','e','m','u','l','a',
+  't','i','o','n',' ','p','r','o','b','l','e','m','s',' ','w',
+  'i','t','h',' ','e','m','u','3','8','7',#000,'E','_','I','n',
+  'v','a','l','i','d',' ','c','o','m','b','i','n','a','t','i',
+  'o','n',' ','o','f',' ','o','p','c','o','d','e',' ','a','n',
+  'd',' ','o','p','e','r','a','n','d','s',#000,'W','_','O','p',
+  'c','o','d','e',' ','$','1',' ','n','o','t',' ','i','n',' ',
+  't','a','b','l','e',',',' ','o','p','e','r','a','n','d','s',
+  ' ','n','o','t',' ','c','h','e','c','k','e','d',#000,'F','_',
+  'I','n','t','e','r','n','a','l',' ','E','r','r','o','r',' ',
+  'i','n',' ','C','o','n','c','a','t','O','p','c','o','d','e',
+  '(',')',#000,'E','_','I','n','v','a','l','i','d',' ','s','i',
+  'z','e',' ','i','n',' ','r','e','f','e','r','e','n','c','e',
+  #000,'E','_','I','n','v','a','l','i','d',' ','m','i','d','d',
+  'l','e',' ','s','i','z','e','d',' ','o','p','e','r','a','n',
+  'd',#000,'E','_','I','n','v','a','l','i','d',' ','t','h','r',
+  'e','e',' ','o','p','e','r','a','n','d',' ','o','p','c','o',
+  'd','e',#000,'E','_','A','s','s','e','m','b','l','e','r',' ',
+  's','y','n','t','a','x',' ','e','r','r','o','r',#000,'E','_',
+  'I','n','v','a','l','i','d',' ','o','p','e','r','a','n','d',
+  ' ','t','y','p','e',#000,'E','_','S','e','g','m','e','n','t',
+  ' ','o','v','e','r','r','i','d','e','s',' ','n','o','t',' ',
+  's','u','p','p','o','r','t','e','d',#000,'E','_','I','n','v',
+  'a','l','i','d',' ','c','o','n','s','t','a','n','t',' ','s',
+  'y','m','b','o','l',' ','$','1',#000,'F','_','I','n','t','e',
+  'r','n','a','l',' ','E','r','r','r','o','r',' ','c','o','n',
+  'v','e','r','t','i','n','g',' ','b','i','n','a','r','y',#000,
+  'F','_','I','n','t','e','r','n','a','l',' ','E','r','r','r',
+  'o','r',' ','c','o','n','v','e','r','t','i','n','g',' ','h',
+  'e','x','a','d','e','c','i','m','a','l',#000,'F','_','I','n',
+  't','e','r','n','a','l',' ','E','r','r','r','o','r',' ','c',
+  'o','n','v','e','r','t','i','n','g',' ','o','c','t','a','l',
+  #000,'E','_','I','n','v','a','l','i','d',' ','c','o','n','s',
+  't','a','n','t',' ','e','x','p','r','e','s','s','i','o','n',
+  #000,'E','_','U','n','k','n','o','w','n',' ','i','d','e','n',
+  't','i','f','i','e','r',':',' ','$','1',#000,'E','_','T','r',
+  'y','i','n','g',' ','t','o',' ','d','e','f','i','n','e',' ',
+  'a','n',' ','i','n','d','e','x',' ','r','e','g','i','s','t',
+  'e','r',' ','m','o','r','e',' ','t','h','a','n',' ','o','n',
+  'c','e',#000,'E','_','I','n','v','a','l','i','d',' ','f','i',
+  'e','l','d',' ','s','p','e','c','i','f','i','e','r',#000,'F',
+  '_','I','n','t','e','r','n','a','l',' ','E','r','r','o','r',
+  ' ','i','n',' ','B','u','i','l','d','S','c','a','l','i','n',
+  'g','(',')',#000,'E','_','I','n','v','a','l','i','d',' ','s',
+  'c','a','l','i','n','g',' ','f','a','c','t','o','r',#000,'E',
+  '_','I','n','v','a','l','i','d',' ','s','c','a','l','i','n',
+  'g',' ','v','a','l','u','e',#000,'E','_','S','c','a','l','i',
+  'n','g',' ','v','a','l','u','e',' ','o','n','l','y',' ','a',
+  'l','l','o','w','e','d',' ','w','i','t','h',' ','i','n','d',
+  'e','x',#000,'E','_','I','n','v','a','l','i','d',' ','a','s',
+  's','e','m','b','l','e','r',' ','s','y','n','t','a','x','.',
+  ' ','N','o',' ','r','e','f',' ','w','i','t','h',' ','b','r',
+  'a','c','k','e','t','s',')',#000,'E','_','E','x','p','r','e',
+  's','s','i','o','n','s',' ','o','f',' ','t','h','e',' ','f',
+  'o','r','m',' ','[','s','r','e','g',':','r','e','g','.','.',
+  '.',']',' ','a','r','e',' ','c','u','r','r','e','n','t','l',
+  'y',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d',
+  #000,'E','_','T','r','y','i','n','g',' ','t','o',' ','d','e',
+  'f','i','n','e',' ','a',' ','s','e','g','m','e','n','t',' ',
+  'r','e','g','i','s','t','e','r',' ','t','w','i','c','e',#000,
   'E','_','T','r','y','i','n','g',' ','t','o',' ','d','e','f',
-  'i','n','e',' ','a',' ','s','e','g','m','e','n','t',' ','r',
-  'e','g','i','s','t','e','r',' ','t','w','i','c','e',#000,'E',
-  '_','T','r','y','i','n','g',' ','t','o',' ','d','e','f','i',
-  'n','e',' ','a',' ','b','a','s','e',' ','r','e','g','i','s',
-  't','e','r',' ','t','w','i','c','e',#000,'E','_','T','r','y',
-  'i','n','g',' ','t','o',' ','u','s','e',' ','a',' ','n','e',
-  'g','a','t','i','v','e',' ','i','n','d','e','x',' ','r','e',
-  'g','i','s','t','e','r',#000,'E','_','A','s','m',' ','s','y',
-  'n','t','a','x',' ','e','r','r','o','r',' ','-',' ','e','r',
-  'r','o','r',' ','i','n',' ','r','e','f','e','r','e','n','c',
-  'e',#000,'E','_','L','o','c','a','l',' ','s','y','m','b','o',
-  'l','s',' ','n','o','t',' ','a','l','l','o','w','e','d',' ',
-  'a','s',' ','r','e','f','e','r','e','n','c','e','s',#000,'E',
-  '_','I','n','v','a','l','i','d',' ','o','p','e','r','a','n',
-  'd',' ','i','n',' ','b','r','a','c','k','e','t',' ','e','x',
-  'p','r','e','s','s','i','o','n',#000,'E','_','I','n','v','a',
-  'l','i','d',' ','s','y','m','b','o','l',' ','n','a','m','e',
-  ':',' ','$','1',#000,'E','_','I','n','v','a','l','i','d',' ',
-  'R','e','f','e','r','e','n','c','e',' ','s','y','n','t','a',
-  'x',#000,'E','_','I','n','v','a','l','i','d',' ','s','t','r',
-  'i','n','g',' ','a','s',' ','o','p','c','o','d','e',' ','o',
-  'p','e','r','a','n','d',':',' ','$','1',#000,'W','_','@','C',
-  'O','D','E',' ','a','n','d',' ','@','D','A','T','A',' ','n',
-  'o','t',' ','s','u','p','p','o','r','t','e','d',#000,'E','_',
-  'N','u','l','l',' ','l','a','b','e','l',' ','r','e','f','e',
-  'r','e','n','c','e','s',' ','a','r','e',' ','n','o','t',' ',
-  'a','l','l','o','w','e','d',#000,'E','_','C','a','n','n','o',
-  't',' ','u','s','e',' ','S','E','L','F',' ','o','u','t','s',
-  'i','d','e',' ','a',' ','m','e','t','h','o','d',#000,'E','_',
-  'A','s','m',' ','s','y','n','t','a','x',' ','e','r','r','o',
-  'r',' ','-',' ','S','h','o','u','l','d',' ','s','t','a','r',
-  't',' ','w','i','t','h',' ','b','r','a','c','k','e','t',#000,
-  'E','_','A','s','m',' ','s','y','n','t','a','x',' ','e','r',
-  'r','o','r',' ','-',' ','r','e','g','i','s','t','e','r',':',
-  ' ','$','1',#000,'E','_','S','E','G',' ','a','n','d',' ','O',
-  'F','F','S','E','T',' ','n','o','t',' ','s','u','p','p','o',
-  'r','t','e','d',#000,'E','_','A','s','m',' ','s','y','n','t',
-  'a','x',' ','e','r','r','o','r',' ','-',' ','i','n',' ','o',
-  'p','c','o','d','e',' ','o','p','e','r','a','n','d',#000,'E',
-  '_','I','n','v','a','l','i','d',' ','S','t','r','i','n','g',
-  ' ','e','x','p','r','e','s','s','i','o','n',#000,'E','_','C',
-  'o','n','s','t','a','n','t',' ','e','x','p','r','e','s','s',
-  'i','o','n',' ','o','u','t',' ','o','f',' ','b','o','u','n',
-  'd','s',#000,'F','_','I','n','t','e','r','n','a','l',' ','E',
-  'r','r','o','r',' ','i','n',' ','B','u','i','l','d','C','o',
-  'n','s','t','a','n','t','(',')',#000,'W','_','A',' ','r','e',
-  'p','e','a','t',' ','p','r','e','f','i','x',' ','a','n','d',
-  ' ','a',' ','s','e','g','m','e','n','t',' ','o','v','e','r',
-  'r','i','d','e',' ','o','n',' ','<','=',' ','i','3','8','6',
-  ' ','m','a','y',' ','r','e','s','u','l','t',' ','i','n',' ',
-  'e','r','r','o','r','s',' ','i','f',' ','a','n',' ','i','n',
-  't','e','r','r','u','p','t',' ','o','c','c','u','r','s',#000,
-  'E','_','I','n','v','a','l','i','d',' ','o','r',' ','m','i',
-  's','s','i','n','g',' ','o','p','c','o','d','e',#000,'E','_',
-  'I','n','v','a','l','i','d',' ','c','o','m','b','i','n','a',
-  't','i','o','n',' ','o','f',' ','p','r','e','f','i','x',' ',
-  'a','n','d',' ','o','p','c','o','d','e',':',' ','$','1',#000,
-  'E','_','I','n','v','a','l','i','d',' ','c','o','m','b','i',
-  'n','a','t','i','o','n',' ','o','f',' ','o','v','e','r','r',
-  'i','d','e',' ','a','n','d',' ','o','p','c','o','d','e',':',
-  ' ','$','1',#000,'E','_','T','o','o',' ','m','a','n','y',' ',
-  'o','p','e','r','a','n','d','s',' ','o','n',' ','l','i','n',
-  'e',#000,'E','_','D','u','p','l','i','c','a','t','e',' ','l',
-  'o','c','a','l',' ','s','y','m','b','o','l',':',' ','$','1',
-  #000,'E','_','U','n','k','n','o','w','n',' ','l','a','b','e',
-  'l',' ','i','d','e','n','t','i','f','e','r',':',' ','$','1',
-  #000,'E','_','A','s','s','e','m','b','l','e',' ','n','o','d',
-  'e',' ','s','y','n','t','a','x',' ','e','r','r','o','r',#000,
-  'E','_','U','n','d','e','f','i','n','e','d',' ','l','o','c',
-  'a','l',' ','s','y','m','b','o','l',':',' ','$','1',#000,'D',
-  '_','S','t','a','r','t','i','n','g',' ','i','n','t','e','l',
-  ' ','s','t','y','l','e','d',' ','a','s','s','e','m','b','l',
-  'e','r',' ','p','a','r','s','i','n','g','.','.','.',#000,'D',
-  '_','F','i','n','i','s','h','e','d',' ','i','n','t','e','l',
-  ' ','s','t','y','l','e','d',' ','a','s','s','e','m','b','l',
-  'e','r',' ','p','a','r','s','i','n','g','.','.','.',#000,'E',
-  '_','N','o','t',' ','a',' ','d','i','r','e','c','t','i','v',
-  'e',' ','o','r',' ','l','o','c','a','l',' ','s','y','m','b',
-  'o','l',':',' ','$','1',#000,'E','_','/',' ','a','t',' ','b',
-  'e','g','i','n','n','i','n','g',' ','o','f',' ','l','i','n',
-  'e',' ','n','o','t',' ','a','l','l','o','w','e','d',#000,'E',
-  '_','N','O','R',' ','n','o','t',' ','s','u','p','p','o','r',
-  't','e','d',#000,'E','_','I','n','v','a','l','i','d',' ','f',
-  'l','o','a','t','i','n','g',' ','p','o','i','n','t',' ','r',
-  'e','g','i','s','t','e','r',' ','n','a','m','e',#000,'W','_',
-  'M','o','d','u','l','o',' ','n','o','t',' ','s','u','p','p',
-  'o','r','t','e','d',#000,'E','_','I','n','v','a','l','i','d',
-  ' ','f','l','o','a','t','i','n','g',' ','p','o','i','n','t',
-  ' ','c','o','n','s','t','a','n','t',':',' ','$','1',#000,'E',
-  '_','S','i','z','e',' ','s','u','f','f','i','x',' ','a','n',
-  'd',' ','d','e','s','t','i','n','a','t','i','o','n',' ','r',
-  'e','g','i','s','t','e','r',' ','d','o',' ','n','o','t',' ',
-  'm','a','t','c','h',#000,'E','_','I','n','t','e','r','n','a',
-  'l',' ','e','r','r','o','r',' ','i','n',' ','C','o','n','c',
-  'a','t','L','a','b','e','l','e','d','I','n','s','t','r','(',
-  ')',#000,'W','_','F','l','o','a','t','i','n','g',' ','p','o',
-  'i','n','t',' ','b','i','n','a','r','y',' ','r','e','p','r',
-  'e','s','e','n','t','a','t','i','o','n',' ','i','g','n','o',
-  'r','e','d',#000,'W','_','F','l','o','a','t','i','n','g',' ',
-  'p','o','i','n','t',' ','h','e','x','a','d','e','c','i','m',
-  'a','l',' ','r','e','p','r','e','s','e','n','t','a','t','i',
-  'o','n',' ','i','g','n','o','r','e','d',#000,'W','_','F','l',
-  'o','a','t','i','n','g',' ','p','o','i','n','t',' ','o','c',
-  't','a','l',' ','r','e','p','r','e','s','e','n','t','a','t',
-  'i','o','n',' ','i','g','n','o','r','e','d',#000,'E','_','I',
-  'n','v','a','l','i','d',' ','r','e','a','l',' ','c','o','n',
-  's','t','a','n','t',' ','e','x','p','r','e','s','s','i','o',
-  'n',#000,'E','_','P','a','r','e','n','t','h','e','s','i','s',
-  ' ','a','r','e',' ','n','o','t',' ','a','l','l','o','w','e',
-  'd',#000,'E','_','I','n','v','a','l','i','d',' ','R','e','f',
-  'e','r','e','n','c','e',#000,'E','_','C','a','n','n','o','t',
-  ' ','u','s','e',' ','_','_','S','E','L','F',' ','o','u','t',
+  'i','n','e',' ','a',' ','b','a','s','e',' ','r','e','g','i',
+  's','t','e','r',' ','t','w','i','c','e',#000,'E','_','T','r',
+  'y','i','n','g',' ','t','o',' ','u','s','e',' ','a',' ','n',
+  'e','g','a','t','i','v','e',' ','i','n','d','e','x',' ','r',
+  'e','g','i','s','t','e','r',#000,'E','_','A','s','m',' ','s',
+  'y','n','t','a','x',' ','e','r','r','o','r',' ','-',' ','e',
+  'r','r','o','r',' ','i','n',' ','r','e','f','e','r','e','n',
+  'c','e',#000,'E','_','L','o','c','a','l',' ','s','y','m','b',
+  'o','l','s',' ','n','o','t',' ','a','l','l','o','w','e','d',
+  ' ','a','s',' ','r','e','f','e','r','e','n','c','e','s',#000,
+  'E','_','I','n','v','a','l','i','d',' ','o','p','e','r','a',
+  'n','d',' ','i','n',' ','b','r','a','c','k','e','t',' ','e',
+  'x','p','r','e','s','s','i','o','n',#000,'E','_','I','n','v',
+  'a','l','i','d',' ','s','y','m','b','o','l',' ','n','a','m',
+  'e',':',' ','$','1',#000,'E','_','I','n','v','a','l','i','d',
+  ' ','R','e','f','e','r','e','n','c','e',' ','s','y','n','t',
+  'a','x',#000,'E','_','I','n','v','a','l','i','d',' ','s','t',
+  'r','i','n','g',' ','a','s',' ','o','p','c','o','d','e',' ',
+  'o','p','e','r','a','n','d',':',' ','$','1',#000,'W','_','@',
+  'C','O','D','E',' ','a','n','d',' ','@','D','A','T','A',' ',
+  'n','o','t',' ','s','u','p','p','o','r','t','e','d',#000,'E',
+  '_','N','u','l','l',' ','l','a','b','e','l',' ','r','e','f',
+  'e','r','e','n','c','e','s',' ','a','r','e',' ','n','o','t',
+  ' ','a','l','l','o','w','e','d',#000,'E','_','C','a','n','n',
+  'o','t',' ','u','s','e',' ','S','E','L','F',' ','o','u','t',
   's','i','d','e',' ','a',' ','m','e','t','h','o','d',#000,'E',
-  '_','C','a','n','n','o','t',' ','u','s','e',' ','_','_','O',
-  'L','D','E','B','P',' ','o','u','t','s','i','d','e',' ','a',
-  ' ','n','e','s','t','e','d',' ','p','r','o','c','e','d','u',
-  'r','e',#000,'W','_','I','d','e','n','t','i','f','i','e','r',
-  ' ','$','1',' ','s','u','p','p','o','s','e','d',' ','e','x',
-  't','e','r','n','a','l',#000,'E','_','I','n','v','a','l','i',
-  'd',' ','s','e','g','m','e','n','t',' ','o','v','e','r','r',
-  'i','d','e',' ','e','x','p','r','e','s','s','i','o','n',#000,
-  'E','_','S','t','r','i','n','g','s',' ','n','o','t',' ','a',
-  'l','l','o','w','e','d',' ','a','s',' ','c','o','n','s','t',
-  'a','n','t','s',#000,'D','_','S','t','a','r','t','i','n','g',
+  '_','A','s','m',' ','s','y','n','t','a','x',' ','e','r','r',
+  'o','r',' ','-',' ','S','h','o','u','l','d',' ','s','t','a',
+  'r','t',' ','w','i','t','h',' ','b','r','a','c','k','e','t',
+  #000,'E','_','A','s','m',' ','s','y','n','t','a','x',' ','e',
+  'r','r','o','r',' ','-',' ','r','e','g','i','s','t','e','r',
+  ':',' ','$','1',#000,'E','_','S','E','G',' ','a','n','d',' ',
+  'O','F','F','S','E','T',' ','n','o','t',' ','s','u','p','p',
+  'o','r','t','e','d',#000,'E','_','A','s','m',' ','s','y','n',
+  't','a','x',' ','e','r','r','o','r',' ','-',' ','i','n',' ',
+  'o','p','c','o','d','e',' ','o','p','e','r','a','n','d',#000,
+  'E','_','I','n','v','a','l','i','d',' ','S','t','r','i','n',
+  'g',' ','e','x','p','r','e','s','s','i','o','n',#000,'E','_',
+  'C','o','n','s','t','a','n','t',' ','e','x','p','r','e','s',
+  's','i','o','n',' ','o','u','t',' ','o','f',' ','b','o','u',
+  'n','d','s',#000,'F','_','I','n','t','e','r','n','a','l',' ',
+  'E','r','r','o','r',' ','i','n',' ','B','u','i','l','d','C',
+  'o','n','s','t','a','n','t','(',')',#000,'W','_','A',' ','r',
+  'e','p','e','a','t',' ','p','r','e','f','i','x',' ','a','n',
+  'd',' ','a',' ','s','e','g','m','e','n','t',' ','o','v','e',
+  'r','r','i','d','e',' ','o','n',' ','<','=',' ','i','3','8',
+  '6',' ','m','a','y',' ','r','e','s','u','l','t',' ','i','n',
+  ' ','e','r','r','o','r','s',' ','i','f',' ','a','n',' ','i',
+  'n','t','e','r','r','u','p','t',' ','o','c','c','u','r','s',
+  #000,'E','_','I','n','v','a','l','i','d',' ','o','r',' ','m',
+  'i','s','s','i','n','g',' ','o','p','c','o','d','e',#000,'E',
+  '_','I','n','v','a','l','i','d',' ','c','o','m','b','i','n',
+  'a','t','i','o','n',' ','o','f',' ','p','r','e','f','i','x',
+  ' ','a','n','d',' ','o','p','c','o','d','e',':',' ','$','1',
+  #000,'E','_','I','n','v','a','l','i','d',' ','c','o','m','b',
+  'i','n','a','t','i','o','n',' ','o','f',' ','o','v','e','r',
+  'r','i','d','e',' ','a','n','d',' ','o','p','c','o','d','e',
+  ':',' ','$','1',#000,'E','_','T','o','o',' ','m','a','n','y',
+  ' ','o','p','e','r','a','n','d','s',' ','o','n',' ','l','i',
+  'n','e',#000,'E','_','D','u','p','l','i','c','a','t','e',' ',
+  'l','o','c','a','l',' ','s','y','m','b','o','l',':',' ','$',
+  '1',#000,'E','_','U','n','k','n','o','w','n',' ','l','a','b',
+  'e','l',' ','i','d','e','n','t','i','f','e','r',':',' ','$',
+  '1',#000,'E','_','A','s','s','e','m','b','l','e',' ','n','o',
+  'd','e',' ','s','y','n','t','a','x',' ','e','r','r','o','r',
+  #000,'E','_','U','n','d','e','f','i','n','e','d',' ','l','o',
+  'c','a','l',' ','s','y','m','b','o','l',':',' ','$','1',#000,
+  'D','_','S','t','a','r','t','i','n','g',' ','i','n','t','e',
+  'l',' ','s','t','y','l','e','d',' ','a','s','s','e','m','b',
+  'l','e','r',' ','p','a','r','s','i','n','g','.','.','.',#000,
+  'D','_','F','i','n','i','s','h','e','d',' ','i','n','t','e',
+  'l',' ','s','t','y','l','e','d',' ','a','s','s','e','m','b',
+  'l','e','r',' ','p','a','r','s','i','n','g','.','.','.',#000,
+  'E','_','N','o','t',' ','a',' ','d','i','r','e','c','t','i',
+  'v','e',' ','o','r',' ','l','o','c','a','l',' ','s','y','m',
+  'b','o','l',':',' ','$','1',#000,'E','_','/',' ','a','t',' ',
+  'b','e','g','i','n','n','i','n','g',' ','o','f',' ','l','i',
+  'n','e',' ','n','o','t',' ','a','l','l','o','w','e','d',#000,
+  'E','_','N','O','R',' ','n','o','t',' ','s','u','p','p','o',
+  'r','t','e','d',#000,'E','_','I','n','v','a','l','i','d',' ',
+  'f','l','o','a','t','i','n','g',' ','p','o','i','n','t',' ',
+  'r','e','g','i','s','t','e','r',' ','n','a','m','e',#000,'W',
+  '_','M','o','d','u','l','o',' ','n','o','t',' ','s','u','p',
+  'p','o','r','t','e','d',#000,'E','_','I','n','v','a','l','i',
+  'd',' ','f','l','o','a','t','i','n','g',' ','p','o','i','n',
+  't',' ','c','o','n','s','t','a','n','t',':',' ','$','1',#000,
+  'E','_','S','i','z','e',' ','s','u','f','f','i','x',' ','a',
+  'n','d',' ','d','e','s','t','i','n','a','t','i','o','n',' ',
+  'r','e','g','i','s','t','e','r',' ','d','o',' ','n','o','t',
+  ' ','m','a','t','c','h',#000,'E','_','I','n','t','e','r','n',
+  'a','l',' ','e','r','r','o','r',' ','i','n',' ','C','o','n',
+  'c','a','t','L','a','b','e','l','e','d','I','n','s','t','r',
+  '(',')',#000,'W','_','F','l','o','a','t','i','n','g',' ','p',
+  'o','i','n','t',' ','b','i','n','a','r','y',' ','r','e','p',
+  'r','e','s','e','n','t','a','t','i','o','n',' ','i','g','n',
+  'o','r','e','d',#000,'W','_','F','l','o','a','t','i','n','g',
+  ' ','p','o','i','n','t',' ','h','e','x','a','d','e','c','i',
+  'm','a','l',' ','r','e','p','r','e','s','e','n','t','a','t',
+  'i','o','n',' ','i','g','n','o','r','e','d',#000,'W','_','F',
+  'l','o','a','t','i','n','g',' ','p','o','i','n','t',' ','o',
+  'c','t','a','l',' ','r','e','p','r','e','s','e','n','t','a',
+  't','i','o','n',' ','i','g','n','o','r','e','d',#000,'E','_',
+  'I','n','v','a','l','i','d',' ','r','e','a','l',' ','c','o',
+  'n','s','t','a','n','t',' ','e','x','p','r','e','s','s','i',
+  'o','n',#000,'E','_','P','a','r','e','n','t','h','e','s','i',
+  's',' ','a','r','e',' ','n','o','t',' ','a','l','l','o','w',
+  'e','d',#000,'E','_','I','n','v','a','l','i','d',' ','R','e',
+  'f','e','r','e','n','c','e',#000,'E','_','C','a','n','n','o',
+  't',' ','u','s','e',' ','_','_','S','E','L','F',' ','o','u',
+  't','s','i','d','e',' ','a',' ','m','e','t','h','o','d',#000,
+  'E','_','C','a','n','n','o','t',' ','u','s','e',' ','_','_',
+  'O','L','D','E','B','P',' ','o','u','t','s','i','d','e',' ',
+  'a',' ','n','e','s','t','e','d',' ','p','r','o','c','e','d',
+  'u','r','e',#000,'W','_','I','d','e','n','t','i','f','i','e',
+  'r',' ','$','1',' ','s','u','p','p','o','s','e','d',' ','e',
+  'x','t','e','r','n','a','l',#000,'E','_','I','n','v','a','l',
+  'i','d',' ','s','e','g','m','e','n','t',' ','o','v','e','r',
+  'r','i','d','e',' ','e','x','p','r','e','s','s','i','o','n',
+  #000,'E','_','S','t','r','i','n','g','s',' ','n','o','t',' ',
+  'a','l','l','o','w','e','d',' ','a','s',' ','c','o','n','s',
+  't','a','n','t','s',#000,'D','_','S','t','a','r','t','i','n',
+  'g',' ','A','T','&','T',' ','s','t','y','l','e','d',' ','a',
+  's','s','e','m','b','l','e','r',' ','p','a','r','s','i','n',
+  'g','.','.','.',#000,'D','_','F','i','n','i','s','h','e','d',
   ' ','A','T','&','T',' ','s','t','y','l','e','d',' ','a','s',
   's','e','m','b','l','e','r',' ','p','a','r','s','i','n','g',
-  '.','.','.',#000,'D','_','F','i','n','i','s','h','e','d',' ',
-  'A','T','&','T',' ','s','t','y','l','e','d',' ','a','s','s',
-  'e','m','b','l','e','r',' ','p','a','r','s','i','n','g','.',
-  '.','.',#000,'E','_','S','w','i','t','c','h','i','n','g',' ',
-  's','e','c','t','i','o','n','s',' ','i','s',' ','n','o','t',
-  ' ','a','l','l','o','w','e','d',' ','i','n',' ','a','n',' ',
-  'a','s','s','e','m','b','l','e','r',' ','b','l','o','c','k',
-  #000,'E','_','I','n','v','a','l','i','d',' ','g','l','o','b',
-  'a','l',' ','d','e','f','i','n','i','t','i','o','n',#000,'E',
-  '_','L','i','n','e',' ','s','e','p','a','r','a','t','o','r',
-  ' ','e','x','p','e','c','t','e','d',#000,'W','_','g','l','o',
-  'b','l',' ','n','o','t',' ','s','u','p','p','o','r','t','e',
-  'd',#000,'W','_','a','l','i','g','n',' ','n','o','t',' ','s',
-  'u','p','p','o','r','t','e','d',#000,'W','_','l','c','o','m',
-  'm',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d',
-  #000,'W','_','c','o','m','m',' ','n','o','t',' ','s','u','p',
-  'p','o','r','t','e','d',#000,'E','_','I','n','v','a','l','i',
-  'd',' ','l','o','c','a','l',' ','c','o','m','m','o','n',' ',
-  'd','e','f','i','n','i','t','i','o','n',#000,'E','_','I','n',
-  'v','a','l','i','d',' ','g','l','o','b','a','l',' ','c','o',
-  'm','m','o','n',' ','d','e','f','i','n','i','t','i','o','n',
-  #000,'E','_','l','o','c','a','l',' ','s','y','m','b','o','l',
-  ':',' ','$','1',' ','n','o','t',' ','f','o','u','n','d',' ',
-  'i','n','s','i','d','e',' ','a','s','m',' ','s','t','a','t',
-  'e','m','e','n','t',#000,'E','_','a','s','s','e','m','b','l',
-  'e','r',' ','c','o','d','e',' ','n','o','t',' ','r','e','t',
-  'u','r','n','e','d',' ','t','o',' ','t','e','x','t',#000,'F',
+  '.','.','.',#000,'E','_','S','w','i','t','c','h','i','n','g',
+  ' ','s','e','c','t','i','o','n','s',' ','i','s',' ','n','o',
+  't',' ','a','l','l','o','w','e','d',' ','i','n',' ','a','n',
+  ' ','a','s','s','e','m','b','l','e','r',' ','b','l','o','c',
+  'k',#000,'E','_','I','n','v','a','l','i','d',' ','g','l','o',
+  'b','a','l',' ','d','e','f','i','n','i','t','i','o','n',#000,
+  'E','_','L','i','n','e',' ','s','e','p','a','r','a','t','o',
+  'r',' ','e','x','p','e','c','t','e','d',#000,'W','_','g','l',
+  'o','b','l',' ','n','o','t',' ','s','u','p','p','o','r','t',
+  'e','d',#000,'W','_','a','l','i','g','n',' ','n','o','t',' ',
+  's','u','p','p','o','r','t','e','d',#000,'W','_','l','c','o',
+  'm','m',' ','n','o','t',' ','s','u','p','p','o','r','t','e',
+  'd',#000,'W','_','c','o','m','m',' ','n','o','t',' ','s','u',
+  'p','p','o','r','t','e','d',#000,'E','_','I','n','v','a','l',
+  'i','d',' ','l','o','c','a','l',' ','c','o','m','m','o','n',
+  ' ','d','e','f','i','n','i','t','i','o','n',#000,'E','_','I',
+  'n','v','a','l','i','d',' ','g','l','o','b','a','l',' ','c',
+  'o','m','m','o','n',' ','d','e','f','i','n','i','t','i','o',
+  'n',#000,'E','_','l','o','c','a','l',' ','s','y','m','b','o',
+  'l',':',' ','$','1',' ','n','o','t',' ','f','o','u','n','d',
+  ' ','i','n','s','i','d','e',' ','a','s','m',' ','s','t','a',
+  't','e','m','e','n','t',#000,'E','_','a','s','s','e','m','b',
+  'l','e','r',' ','c','o','d','e',' ','n','o','t',' ','r','e',
+  't','u','r','n','e','d',' ','t','o',' ','t','e','x','t',#000,
+  'F','_','i','n','t','e','r','n','a','l',' ','e','r','r','o',
+  'r',' ','i','n',' ','B','u','i','l','d','R','e','f','e','r',
+  'e','n','c','e','(',')',#000,'E','_','i','n','v','a','l','i',
+  'd',' ','o','p','c','o','d','e',' ','s','i','z','e',#000,'W',
+  '_','N','E','A','R',' ','i','g','n','o','r','e','d',#000,'W',
+  '_','F','A','R',' ','i','g','n','o','r','e','d',#000,'D','_',
+  'C','r','e','a','t','i','n','g',' ','i','n','l','i','n','e',
+  ' ','a','s','m',' ','l','o','o','k','u','p',' ','t','a','b',
+  'l','e','s',#000,'W','_','U','s','i','n','g',' ','a',' ','d',
+  'e','f','i','n','e','d',' ','n','a','m','e',' ','a','s',' ',
+  'a',' ','l','o','c','a','l',' ','l','a','b','e','l',#000,'F',
   '_','i','n','t','e','r','n','a','l',' ','e','r','r','o','r',
-  ' ','i','n',' ','B','u','i','l','d','R','e','f','e','r','e',
-  'n','c','e','(',')',#000,'E','_','i','n','v','a','l','i','d',
-  ' ','o','p','c','o','d','e',' ','s','i','z','e',#000,'W','_',
-  'N','E','A','R',' ','i','g','n','o','r','e','d',#000,'W','_',
-  'F','A','R',' ','i','g','n','o','r','e','d',#000,'D','_','C',
-  'r','e','a','t','i','n','g',' ','i','n','l','i','n','e',' ',
-  'a','s','m',' ','l','o','o','k','u','p',' ','t','a','b','l',
-  'e','s',#000,'W','_','U','s','i','n','g',' ','a',' ','d','e',
-  'f','i','n','e','d',' ','n','a','m','e',' ','a','s',' ','a',
-  ' ','l','o','c','a','l',' ','l','a','b','e','l',#000,'F','_',
-  'i','n','t','e','r','n','a','l',' ','e','r','r','o','r',' ',
-  'i','n',' ','H','a','n','d','l','e','E','x','t','e','n','d',
-  '(',')',#000,'E','_','I','n','v','a','l','i','d',' ','c','h',
-  'a','r','a','c','t','e','r',':',' ','<',#000,'E','_','I','n',
-  'v','a','l','i','d',' ','c','h','a','r','a','c','t','e','r',
-  ':',' ','>',#000,'E','_','U','n','s','u','p','p','o','r','t',
-  'e','d',' ','o','p','c','o','d','e',#000,'E','_','I','n','c',
-  'r','e','m','e','n','t',' ','a','n','d',' ','D','e','c','r',
-  'e','m','e','n','t',' ','m','o','d','e',' ','n','o','t',' ',
-  'a','l','l','o','w','e','d',' ','t','o','g','e','t','h','e',
-  'r',#000,'E','_','I','n','v','a','l','i','d',' ','R','e','g',
-  'i','s','t','e','r',' ','l','i','s','t',' ','i','n',' ','m',
-  'o','v','e','m','/','f','m','o','v','e','m',#000,'E','_','I',
-  'n','v','a','l','i','d',' ','R','e','g','i','s','t','e','r',
-  ' ','l','i','s','t',' ','f','o','r',' ','o','p','c','o','d',
-  'e',#000,'E','_','6','8','0','2','0','+',' ','m','o','d','e',
-  ' ','r','e','q','u','i','r','e','d',' ','t','o',' ','a','s',
-  's','e','m','b','l','e',#000,'D','_','S','t','a','r','t','i',
-  'n','g',' ','M','o','t','o','r','o','l','a',' ','s','t','y',
-  'l','e','d',' ','a','s','s','e','m','b','l','e','r',' ','p',
-  'a','r','s','i','n','g','.','.','.',#000,'D','_','F','i','n',
-  'i','s','h','e','d',' ','M','o','t','o','r','o','l','a',' ',
-  's','t','y','l','e','d',' ','a','s','s','e','m','b','l','e',
-  'r',' ','p','a','r','s','i','n','g','.','.','.',#000,'W','_',
-  'X','D','E','F',' ','n','o','t',' ','s','u','p','p','o','r',
-  't','e','d',#000,'W','_','F','u','n','c','t','i','o','n','s',
-  ' ','w','i','t','h',' ','v','o','i','d',' ','r','e','t','u',
-  'r','n',' ','v','a','l','u','e',' ','c','a','n',#039,'t',' ',
-  'r','e','t','u','r','n',' ','a','n','y',' ','v','a','l','u',
-  'e',' ','i','n',' ','a','s','m',' ','c','o','d','e',#000,'E',
-  '_','I','n','v','a','l','i','d',' ','s','u','f','f','i','x',
-  ' ','f','o','r',' ','i','n','t','e','l',' ','a','s','s','e',
-  'm','b','l','e','r',#000,'E','_','E','x','t','e','n','d','e',
-  'd',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d',
-  ' ','i','n',' ','t','h','i','s',' ','m','o','d','e',#000,'E',
-  '_','C','o','m','p',' ','n','o','t',' ','s','u','p','p','o',
-  'r','t','e','d',' ','i','n',' ','t','h','i','s',' ','m','o',
-  'd','e',#000,'W','_','Y','o','u',' ','n','e','e','d',' ','G',
-  'N','U',' ','a','s',' ','v','e','r','s','i','o','n',' ','>',
-  '=',' ','2','.','8','1',' ','t','o',' ','c','o','m','p','i',
-  'l','e',' ','t','h','i','s',' ','M','M','X',' ','c','o','d',
-  'e',#000,'I','_','A','s','s','e','m','b','l','i','n','g',' ',
-  '(','p','i','p','e',')',' ','$','1',#000,'E','_','C','a','n',
-  #039,'t',' ','c','r','e','a','t','e',' ','a','s','s','e','m',
-  'b','e','r',' ','f','i','l','e',' ','$','1',#000,'W','_','A',
-  's','s','e','m','b','l','e','r',' ','$','1',' ','n','o','t',
-  ' ','f','o','u','n','d',',',' ','s','w','i','t','c','h','i',
-  'n','g',' ','t','o',' ','e','x','t','e','r','n','a','l',' ',
-  'a','s','s','e','m','b','l','i','n','g',#000,'U','_','U','s',
-  'i','n','g',' ','a','s','s','e','m','b','l','e','r',':',' ',
-  '$','1',#000,'W','_','E','r','r','o','r',' ','w','h','i','l',
-  'e',' ','a','s','s','e','m','b','l','i','n','g',#000,'W','_',
-  'C','a','n',#039,'t',' ','c','a','l','l',' ','t','h','e',' ',
-  'a','s','s','e','m','b','l','e','r',',',' ','s','w','i','t',
+  ' ','i','n',' ','H','a','n','d','l','e','E','x','t','e','n',
+  'd','(',')',#000,'E','_','I','n','v','a','l','i','d',' ','c',
+  'h','a','r','a','c','t','e','r',':',' ','<',#000,'E','_','I',
+  'n','v','a','l','i','d',' ','c','h','a','r','a','c','t','e',
+  'r',':',' ','>',#000,'E','_','U','n','s','u','p','p','o','r',
+  't','e','d',' ','o','p','c','o','d','e',#000,'E','_','I','n',
+  'c','r','e','m','e','n','t',' ','a','n','d',' ','D','e','c',
+  'r','e','m','e','n','t',' ','m','o','d','e',' ','n','o','t',
+  ' ','a','l','l','o','w','e','d',' ','t','o','g','e','t','h',
+  'e','r',#000,'E','_','I','n','v','a','l','i','d',' ','R','e',
+  'g','i','s','t','e','r',' ','l','i','s','t',' ','i','n',' ',
+  'm','o','v','e','m','/','f','m','o','v','e','m',#000,'E','_',
+  'I','n','v','a','l','i','d',' ','R','e','g','i','s','t','e',
+  'r',' ','l','i','s','t',' ','f','o','r',' ','o','p','c','o',
+  'd','e',#000,'E','_','6','8','0','2','0','+',' ','m','o','d',
+  'e',' ','r','e','q','u','i','r','e','d',' ','t','o',' ','a',
+  's','s','e','m','b','l','e',#000,'D','_','S','t','a','r','t',
+  'i','n','g',' ','M','o','t','o','r','o','l','a',' ','s','t',
+  'y','l','e','d',' ','a','s','s','e','m','b','l','e','r',' ',
+  'p','a','r','s','i','n','g','.','.','.',#000,'D','_','F','i',
+  'n','i','s','h','e','d',' ','M','o','t','o','r','o','l','a',
+  ' ','s','t','y','l','e','d',' ','a','s','s','e','m','b','l',
+  'e','r',' ','p','a','r','s','i','n','g','.','.','.',#000,'W',
+  '_','X','D','E','F',' ','n','o','t',' ','s','u','p','p','o',
+  'r','t','e','d',#000,'W','_','F','u','n','c','t','i','o','n',
+  's',' ','w','i','t','h',' ','v','o','i','d',' ','r','e','t',
+  'u','r','n',' ','v','a','l','u','e',' ','c','a','n',#039,'t',
+  ' ','r','e','t','u','r','n',' ','a','n','y',' ','v','a','l',
+  'u','e',' ','i','n',' ','a','s','m',' ','c','o','d','e',#000,
+  'E','_','I','n','v','a','l','i','d',' ','s','u','f','f','i',
+  'x',' ','f','o','r',' ','i','n','t','e','l',' ','a','s','s',
+  'e','m','b','l','e','r',#000,'E','_','E','x','t','e','n','d',
+  'e','d',' ','n','o','t',' ','s','u','p','p','o','r','t','e',
+  'd',' ','i','n',' ','t','h','i','s',' ','m','o','d','e',#000,
+  'E','_','C','o','m','p',' ','n','o','t',' ','s','u','p','p',
+  'o','r','t','e','d',' ','i','n',' ','t','h','i','s',' ','m',
+  'o','d','e',#000,'W','_','Y','o','u',' ','n','e','e','d',' ',
+  'G','N','U',' ','a','s',' ','v','e','r','s','i','o','n',' ',
+  '>','=',' ','2','.','8','1',' ','t','o',' ','c','o','m','p',
+  'i','l','e',' ','t','h','i','s',' ','M','M','X',' ','c','o',
+  'd','e',#000,'I','_','A','s','s','e','m','b','l','i','n','g',
+  ' ','(','p','i','p','e',')',' ','$','1',#000,'E','_','C','a',
+  'n',#039,'t',' ','c','r','e','a','t','e',' ','a','s','s','e',
+  'm','b','e','r',' ','f','i','l','e',' ','$','1',#000,'W','_',
+  'A','s','s','e','m','b','l','e','r',' ','$','1',' ','n','o',
+  't',' ','f','o','u','n','d',',',' ','s','w','i','t','c','h',
+  'i','n','g',' ','t','o',' ','e','x','t','e','r','n','a','l',
+  ' ','a','s','s','e','m','b','l','i','n','g',#000,'U','_','U',
+  's','i','n','g',' ','a','s','s','e','m','b','l','e','r',':',
+  ' ','$','1',#000,'W','_','E','r','r','o','r',' ','w','h','i',
+  'l','e',' ','a','s','s','e','m','b','l','i','n','g',#000,'W',
+  '_','C','a','n',#039,'t',' ','c','a','l','l',' ','t','h','e',
+  ' ','a','s','s','e','m','b','l','e','r',',',' ','s','w','i',
+  't','c','h','i','n','g',' ','t','o',' ','e','x','t','e','r',
+  'n','a','l',' ','a','s','s','e','m','b','l','i','n','g',#000,
+  'I','_','A','s','s','e','m','b','l','i','n','g',' ','$','1',
+  #000,'W','_','L','i','n','k','e','r',' ','$','1',' ','n','o',
+  't',' ','f','o','u','n','d',',',' ','s','w','i','t','c','h',
+  'i','n','g',' ','t','o',' ','e','x','t','e','r','n','a','l',
+  ' ','l','i','n','k','i','n','g',#000,'U','_','U','s','i','n',
+  'g',' ','l','i','n','k','e','r',':',' ','$','1',#000,'E','_',
+  'F','i','l','e',' ','$','1',' ','n','o','t',' ','f','o','u',
+  'n','d',',',' ','L','i','n','k','i','n','g',' ','m','a','y',
+  ' ','f','a','i','l',' ','!','!',#000,'W','_','E','r','r','o',
+  'r',' ','w','h','i','l','e',' ','l','i','n','k','i','n','g',
+  #000,'W','_','C','a','n',#039,'t',' ','c','a','l','l',' ','t',
+  'h','e',' ','l','i','n','k','e','r',',',' ','s','w','i','t',
   'c','h','i','n','g',' ','t','o',' ','e','x','t','e','r','n',
-  'a','l',' ','a','s','s','e','m','b','l','i','n','g',#000,'I',
-  '_','A','s','s','e','m','b','l','i','n','g',' ','$','1',#000,
-  'W','_','L','i','n','k','e','r',' ','$','1',' ','n','o','t',
-  ' ','f','o','u','n','d',',',' ','s','w','i','t','c','h','i',
-  'n','g',' ','t','o',' ','e','x','t','e','r','n','a','l',' ',
-  'l','i','n','k','i','n','g',#000,'U','_','U','s','i','n','g',
-  ' ','l','i','n','k','e','r',':',' ','$','1',#000,'E','_','F',
-  'i','l','e',' ','$','1',' ','n','o','t',' ','f','o','u','n',
-  'd',',',' ','L','i','n','k','i','n','g',' ','m','a','y',' ',
-  'f','a','i','l',' ','!','!',#000,'W','_','E','r','r','o','r',
-  ' ','w','h','i','l','e',' ','l','i','n','k','i','n','g',#000,
-  'W','_','C','a','n',#039,'t',' ','c','a','l','l',' ','t','h',
-  'e',' ','l','i','n','k','e','r',',',' ','s','w','i','t','c',
-  'h','i','n','g',' ','t','o',' ','e','x','t','e','r','n','a',
-  'l',' ','l','i','n','k','i','n','g',#000,'I','_','L','i','n',
-  'k','i','n','g',' ','$','1',#000,'W','_','b','i','n','d','e',
-  'r',' ','n','o','t',' ','f','o','u','n','d',',',' ','s','w',
-  'i','t','c','h','i','n','g',' ','t','o',' ','e','x','t','e',
-  'r','n','a','l',' ','b','i','n','d','i','n','g',#000,'W','_',
-  'a','r',' ','n','o','t',' ','f','o','u','n','d',',',' ','s',
+  'a','l',' ','l','i','n','k','i','n','g',#000,'I','_','L','i',
+  'n','k','i','n','g',' ','$','1',#000,'W','_','b','i','n','d',
+  'e','r',' ','n','o','t',' ','f','o','u','n','d',',',' ','s',
   'w','i','t','c','h','i','n','g',' ','t','o',' ','e','x','t',
-  'e','r','n','a','l',' ','a','r',#000,'E','_','D','y','n','a',
-  'm','i','c',' ','L','i','b','r','a','r','i','e','s',' ','n',
-  'o','t',' ','s','u','p','p','o','r','t','e','d',#000,'I','_',
-  'C','l','o','s','i','n','g',' ','s','c','r','i','p','t',' ',
-  '$','1',#000,'U','_','P','P','U',' ','L','o','a','d','i','n',
-  'g',' ','$','1',#000,'D','_','P','P','U',' ','T','i','m','e',
-  ':',' ','$','1',#000,'D','_','P','P','U',' ','F','i','l','e',
-  ' ','t','o','o',' ','s','h','o','r','t',#000,'D','_','P','P',
-  'U',' ','I','n','v','a','l','i','d',' ','H','e','a','d','e',
-  'r',' ','(','n','o',' ','P','P','U',' ','a','t',' ','t','h',
-  'e',' ','b','e','g','i','n',')',#000,'D','_','P','P','U',' ',
-  'I','n','v','a','l','i','d',' ','V','e','r','s','i','o','n',
-  ' ','$','1',#000,'D','_','P','P','U',' ','F','l','a','g','s',
-  ':',' ','$','1',#000,'D','_','P','P','U',' ','C','r','c',':',
-  ' ','$','1',#000,'T','_','P','P','U',' ','S','o','u','r','c',
-  'e',':',' ','$','1',#000,'D','_','o','b','j','e','c','t','f',
-  'i','l','e',' ','a','n','d',' ','a','s','s','e','m','b','l',
-  'e','r','f','i','l','e',' ','a','r','e',' ','o','l','d','e',
-  'r',' ','t','h','a','n',' ','p','p','u','f','i','l','e',#000,
-  'D','_','o','b','j','e','c','t','f','i','l','e',' ','i','s',
-  ' ','o','l','d','e','r',' ','t','h','a','n',' ','a','s','s',
-  'e','m','b','l','e','r','f','i','l','e',#000,'T','_','U','n',
-  'i','t','s','e','a','r','c','h',':',' ','$','1',#000,'U','_',
-  'W','r','i','t','i','n','g',' ','$','1',#000,'F','_','C','a',
-  'n',#039,'t',' ','W','r','i','t','e',' ','P','P','U','-','F',
-  'i','l','e',#000,'F','_','r','e','a','d','i','n','g',' ','P',
-  'P','U','-','F','i','l','e',#000,'F','_','I','n','v','a','l',
-  'i','d',' ','P','P','U','-','F','i','l','e',' ','e','n','t',
-  'r','y',':',' ','$','1',#000,'F','_','P','P','U',' ','D','b',
-  'x',' ','c','o','u','n','t',' ','p','r','o','b','l','e','m',
-  #000,'E','_','I','l','l','e','g','a','l',' ','u','n','i','t',
-  ' ','n','a','m','e',':',' ','$','1',#000,'F','_','T','o','o',
-  ' ','m','u','c','h',' ','u','n','i','t','s',#000,'F','_','C',
-  'i','r','c','u','l','a','r',' ','u','n','i','t',' ','r','e',
-  'f','e','r','e','n','c','e',#000,'F','_','C','a','n',#039,'t',
-  ' ','c','o','m','p','i','l','e',' ','u','n','i','t',' ','$',
-  '1',',',' ','n','o',' ','s','o','u','r','c','e','s',' ','a',
-  'v','a','i','l','a','b','l','e',#000,'W','_','C','o','m','p',
-  'i','l','i','n','g',' ','t','h','e',' ','s','y','s','t','e',
-  'm',' ','u','n','i','t',' ','r','e','q','u','i','r','e','s',
-  ' ','t','h','e',' ','-','U','s',' ','s','w','i','t','c','h',
-  #000,'E','_','$','1',' ','E','r','r','o','r','s',#000,'F','_',
-  'T','h','e','r','e',' ','w','e','r','e',' ','e','r','r','o',
-  'r','s',' ','c','o','m','p','i','l','i','n','g',' ','m','o',
-  'd','u','l','e',',',' ','c','o','m','p','i','l','a','t','i',
-  'o','n',' ','s','t','o','p','p','e','d',#000);
+  'e','r','n','a','l',' ','b','i','n','d','i','n','g',#000,'W',
+  '_','a','r',' ','n','o','t',' ','f','o','u','n','d',',',' ',
+  's','w','i','t','c','h','i','n','g',' ','t','o',' ','e','x',
+  't','e','r','n','a','l',' ','a','r',#000,'E','_','D','y','n',
+  'a','m','i','c',' ','L','i','b','r','a','r','i','e','s',' ',
+  'n','o','t',' ','s','u','p','p','o','r','t','e','d',#000,'I',
+  '_','C','l','o','s','i','n','g',' ','s','c','r','i','p','t',
+  ' ','$','1',#000,'U','_','P','P','U',' ','L','o','a','d','i',
+  'n','g',' ','$','1',#000,'D','_','P','P','U',' ','T','i','m',
+  'e',':',' ','$','1',#000,'D','_','P','P','U',' ','F','i','l',
+  'e',' ','t','o','o',' ','s','h','o','r','t',#000,'D','_','P',
+  'P','U',' ','I','n','v','a','l','i','d',' ','H','e','a','d',
+  'e','r',' ','(','n','o',' ','P','P','U',' ','a','t',' ','t',
+  'h','e',' ','b','e','g','i','n',')',#000,'D','_','P','P','U',
+  ' ','I','n','v','a','l','i','d',' ','V','e','r','s','i','o',
+  'n',' ','$','1',#000,'D','_','P','P','U',' ','F','l','a','g',
+  's',':',' ','$','1',#000,'D','_','P','P','U',' ','C','r','c',
+  ':',' ','$','1',#000,'T','_','P','P','U',' ','S','o','u','r',
+  'c','e',':',' ','$','1',#000,'D','_','o','b','j','e','c','t',
+  'f','i','l','e',' ','a','n','d',' ','a','s','s','e','m','b',
+  'l','e','r','f','i','l','e',' ','a','r','e',' ','o','l','d',
+  'e','r',' ','t','h','a','n',' ','p','p','u','f','i','l','e',
+  #000,'D','_','o','b','j','e','c','t','f','i','l','e',' ','i',
+  's',' ','o','l','d','e','r',' ','t','h','a','n',' ','a','s',
+  's','e','m','b','l','e','r','f','i','l','e',#000,'T','_','U',
+  'n','i','t','s','e','a','r','c','h',':',' ','$','1',#000,'U',
+  '_','W','r','i','t','i','n','g',' ','$','1',#000,'F','_','C',
+  'a','n',#039,'t',' ','W','r','i','t','e',' ','P','P','U','-',
+  'F','i','l','e',#000,'F','_','r','e','a','d','i','n','g',' ',
+  'P','P','U','-','F','i','l','e',#000,'F','_','I','n','v','a',
+  'l','i','d',' ','P','P','U','-','F','i','l','e',' ','e','n',
+  't','r','y',':',' ','$','1',#000,'F','_','P','P','U',' ','D',
+  'b','x',' ','c','o','u','n','t',' ','p','r','o','b','l','e',
+  'm',#000,'E','_','I','l','l','e','g','a','l',' ','u','n','i',
+  't',' ','n','a','m','e',':',' ','$','1',#000,'F','_','T','o',
+  'o',' ','m','u','c','h',' ','u','n','i','t','s',#000,'F','_',
+  'C','i','r','c','u','l','a','r',' ','u','n','i','t',' ','r',
+  'e','f','e','r','e','n','c','e',#000,'F','_','C','a','n',#039,
+  't',' ','c','o','m','p','i','l','e',' ','u','n','i','t',' ',
+  '$','1',',',' ','n','o',' ','s','o','u','r','c','e','s',' ',
+  'a','v','a','i','l','a','b','l','e',#000,'W','_','C','o','m',
+  'p','i','l','i','n','g',' ','t','h','e',' ','s','y','s','t',
+  'e','m',' ','u','n','i','t',' ','r','e','q','u','i','r','e',
+  's',' ','t','h','e',' ','-','U','s',' ','s','w','i','t','c',
+  'h',#000,'E','_','$','1',' ','E','r','r','o','r','s',#000,'F',
+  '_','T','h','e','r','e',' ','w','e','r','e',' ','e','r','r',
+  'o','r','s',' ','c','o','m','p','i','l','i','n','g',' ','m',
+  'o','d','u','l','e',',',' ','c','o','m','p','i','l','a','t',
+  'i','o','n',' ','s','t','o','p','p','e','d',#000);

+ 64 - 4
compiler/pass_1.pas

@@ -55,12 +55,60 @@ unit pass_1;
     const
        count_ref : boolean = true;
 
-    procedure error(const t : tmsgconst);
+    procedure message(const t : tmsgconst);
+
+      var
+         olderrorcount : longint;
 
       begin
          if not(codegenerror) then
-           verbose.Message(t);
-         codegenerror:=true;
+           begin
+              olderrorcount:=errorcount;
+              verbose.Message(t);
+              codegenerror:=olderrorcount<>errorcount;
+           end;
+      end;
+
+    procedure message1(const t : tmsgconst;const s : string);
+
+      var
+         olderrorcount : longint;
+
+      begin
+         if not(codegenerror) then
+           begin
+              olderrorcount:=errorcount;
+              verbose.Message1(t,s);
+              codegenerror:=olderrorcount<>errorcount;
+           end;
+      end;
+
+    procedure message2(const t : tmsgconst;const s1,s2 : string);
+
+      var
+         olderrorcount : longint;
+
+      begin
+         if not(codegenerror) then
+           begin
+              olderrorcount:=errorcount;
+              verbose.Message2(t,s1,s2);
+              codegenerror:=olderrorcount<>errorcount;
+           end;
+      end;
+
+    procedure message3(const t : tmsgconst;const s1,s2,s3 : string);
+
+      var
+         olderrorcount : longint;
+
+      begin
+         if not(codegenerror) then
+           begin
+              olderrorcount:=errorcount;
+              verbose.Message3(t,s1,s2,s3);
+              codegenerror:=olderrorcount<>errorcount;
+           end;
       end;
 
     procedure firstpass(var p : ptree);forward;
@@ -383,6 +431,13 @@ unit pass_1;
                 doconv:=tc_equal;
                 b:=true;
              end
+         else
+           { nil is compatible with procvars }
+           if (fromtreetype=niln) and (def_to^.deftype=procvardef) then
+             begin
+                doconv:=tc_equal;
+                b:=true;
+             end
          { procedure variable can be assigned to an void pointer }
          { Not anymore. Use the @ operator now.}
          else
@@ -4502,7 +4557,12 @@ unit pass_1;
 end.
 {
   $Log$
-  Revision 1.8  1998-04-13 08:42:52  florian
+  Revision 1.9  1998-04-13 21:15:42  florian
+    * error handling of pass_1 and cgi386 fixed
+    * the following bugs fixed: 0117, 0118, 0119 and 0129, 0122 was already
+      fixed, verified
+
+  Revision 1.8  1998/04/13 08:42:52  florian
     * call by reference and call by value open arrays fixed
 
   Revision 1.7  1998/04/12 22:39:44  florian

+ 7 - 2
compiler/verbose.pas

@@ -187,7 +187,7 @@ begin
   else
    if (idx in [1..5]) then
     begin
-      for i:=1to idx do
+      for i:=1 to idx do
        begin
          case upcase(s[i]) of
           'F' : begin
@@ -290,7 +290,12 @@ end.
 
 {
   $Log$
-  Revision 1.2  1998-03-28 23:09:57  florian
+  Revision 1.3  1998-04-13 21:15:42  florian
+    * error handling of pass_1 and cgi386 fixed
+    * the following bugs fixed: 0117, 0118, 0119 and 0129, 0122 was already
+      fixed, verified
+
+  Revision 1.2  1998/03/28 23:09:57  florian
     * secondin bugfix (m68k and i386)
     * overflow checking bugfix (m68k and i386) -- pretty useless in
       secondadd, since everything is done using 32-bit