Browse Source

* use an enum instead of integer constants to represent inline numbers
* compinnr.inc include file converted to a unit
* inline number field size stored in ppu increased from byte to longint
* inlines in the parse tree (when written with the -vp option) now printed with
their enum name, instead of number

git-svn-id: trunk@36174 -

nickysn 8 years ago
parent
commit
efc5e339d0

+ 1 - 1
.gitattributes

@@ -151,7 +151,7 @@ compiler/cgutils.pas svneol=native#text/plain
 compiler/cmsgs.pas svneol=native#text/plain
 compiler/cmsgs.pas svneol=native#text/plain
 compiler/comphook.pas svneol=native#text/plain
 compiler/comphook.pas svneol=native#text/plain
 compiler/compiler.pas svneol=native#text/plain
 compiler/compiler.pas svneol=native#text/plain
-compiler/compinnr.inc svneol=native#text/plain
+compiler/compinnr.pas svneol=native#text/plain
 compiler/comprsrc.pas svneol=native#text/plain
 compiler/comprsrc.pas svneol=native#text/plain
 compiler/constexp.pas svneol=native#text/x-pascal
 compiler/constexp.pas svneol=native#text/x-pascal
 compiler/cpid.pas svneol=native#text/plain
 compiler/cpid.pas svneol=native#text/plain

+ 1 - 1
compiler/arm/narmmat.pas

@@ -51,7 +51,7 @@ interface
 implementation
 implementation
 
 
     uses
     uses
-      globtype,
+      globtype,compinnr,
       cutils,verbose,globals,constexp,
       cutils,verbose,globals,constexp,
       aasmbase,aasmcpu,aasmtai,aasmdata,
       aasmbase,aasmcpu,aasmtai,aasmdata,
       defutil,
       defutil,

+ 0 - 152
compiler/compinnr.inc

@@ -1,152 +0,0 @@
-{
-    This file is part of the Free Pascal run time library and compiler.
-    Copyright (c) 1998-2002 by the Free Pascal development team
-
-    Internal Function/Constant Evaluator numbers
-
-    See the file COPYING.FPC, included in this distribution,
-    for details about the copyright.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- **********************************************************************}
-
-const
-{ Internal functions }
-   in_lo_word           = 1;
-   in_hi_word           = 2;
-   in_lo_long           = 3;
-   in_hi_long           = 4;
-   in_ord_x             = 5;
-   in_length_x          = 6;
-   in_chr_byte          = 7;
-   in_write_x           = 14;
-   in_writeln_x         = 15;
-   in_read_x            = 16;
-   in_readln_x          = 17;
-   in_concat_x          = 18;
-   in_assigned_x        = 19;
-   in_str_x_string      = 20;
-   in_ofs_x             = 21;
-   in_sizeof_x          = 22;
-   in_typeof_x          = 23;
-   in_val_x             = 24;
-   in_reset_x           = 25;
-   in_rewrite_x         = 26;
-   in_low_x             = 27;
-   in_high_x            = 28;
-   in_seg_x             = 29;
-   in_pred_x            = 30;
-   in_succ_x            = 31;
-   in_reset_typedfile   = 32;
-   in_rewrite_typedfile = 33;
-   in_settextbuf_file_x = 34;
-   in_inc_x             = 35;
-   in_dec_x             = 36;
-   in_include_x_y       = 37;
-   in_exclude_x_y       = 38;
-   in_break             = 39;
-   in_continue          = 40;
-   in_assert_x_y        = 41;
-   in_addr_x            = 42;
-   in_typeinfo_x        = 43;
-   in_setlength_x       = 44;
-   in_finalize_x        = 45;
-   in_new_x             = 46;
-   in_dispose_x         = 47;
-   in_exit              = 48;
-   in_copy_x            = 49;
-   in_initialize_x      = 50;
-   in_leave             = 51; {macpas}
-   in_cycle             = 52; {macpas}
-   in_slice_x           = 53;
-   in_unaligned_x       = 54;
-   in_get_frame         = 56;
-   in_get_caller_addr   = 57;
-   in_get_caller_frame  = 58;
-   in_pack_x_y_z        = 59;
-   in_unpack_x_y_z      = 60;
-   in_bitsizeof_x       = 61;
-   in_writestr_x        = 62;
-   in_readstr_x         = 63;
-   in_abs_long          = 64;
-   in_ror_x             = 65;
-   in_ror_x_y           = 66;
-   in_rol_x             = 67;
-   in_rol_x_y           = 68;
-   in_objc_selector_x   = 69;
-   in_objc_protocol_x   = 70;
-   in_objc_encode_x     = 71;
-   in_sar_x_y           = 72;
-   in_sar_x             = 73;
-   in_bsf_x             = 74;
-   in_bsr_x             = 75;
-   in_default_x         = 76;
-   in_box_x             = 77; { managed platforms: wrap in class instance }
-   in_unbox_x_y         = 78; { manage platforms: extract from class instance }
-   in_popcnt_x          = 79;
-   in_aligned_x         = 80;
-   in_setstring_x_y_z   = 81;
-   in_insert_x_y_z      = 82;
-   in_delete_x_y_z      = 83;
-   in_reset_typedfile_name   = 84;
-   in_rewrite_typedfile_name = 85;
-   in_and_assign_x_y    = 86;
-   in_or_assign_x_y     = 87;
-   in_xor_assign_x_y    = 88;
-   in_sar_assign_x_y    = 89;
-   in_shl_assign_x_y    = 90;
-   in_shr_assign_x_y    = 91;
-   in_rol_assign_x_y    = 92;
-   in_ror_assign_x_y    = 93;
-   in_neg_assign_x      = 94;
-   in_not_assign_x      = 95;
-
-{ Internal constant functions }
-   in_const_sqr        = 100;
-   in_const_abs        = 101;
-   in_const_odd        = 102;
-   in_const_ptr        = 103;
-   in_const_swap_word  = 104;
-   in_const_swap_long  = 105;
-   in_lo_qword         = 106;
-   in_hi_qword         = 107;
-   in_const_swap_qword = 108;
-   in_prefetch_var     = 109;
-
-{ FPU functions }
-   in_trunc_real       = 120;
-   in_round_real       = 121;
-   in_frac_real        = 122;
-   in_int_real         = 123;
-   in_exp_real         = 124;
-   in_cos_real         = 125;
-   in_pi_real          = 126;
-   in_abs_real         = 127;
-   in_sqr_real         = 128;
-   in_sqrt_real        = 129;
-   in_arctan_real      = 130;
-   in_ln_real          = 131;
-   in_sin_real         = 132;
-   in_fma_single       = 133;
-   in_fma_double       = 134;
-   in_fma_extended     = 135;
-   in_fma_float128     = 136;
-
-{ MMX functions }
-  { these contants are used by the mmx unit }
-
-   { MMX }
-   in_mmx_pcmpeqb      = 200;
-   in_mmx_pcmpeqw      = 201;
-   in_mmx_pcmpeqd      = 202;
-   in_mmx_pcmpgtb      = 203;
-   in_mmx_pcmpgtw      = 204;
-   in_mmx_pcmpgtd      = 205;
-
-   { 3DNow }
-
-   { SSE }
-

+ 164 - 0
compiler/compinnr.pas

@@ -0,0 +1,164 @@
+{
+    This file is part of the Free Pascal run time library and compiler.
+    Copyright (c) 1998-2002 by the Free Pascal development team
+
+    Internal Function/Constant Evaluator numbers
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+unit compinnr;
+
+{$i fpcdefs.inc}
+
+{$packenum 4}
+
+interface
+
+type
+   tinlinenumber=(
+     in_none              = -1,
+{ Internal functions }
+     in_lo_word           = 1,
+     in_hi_word           = 2,
+     in_lo_long           = 3,
+     in_hi_long           = 4,
+     in_ord_x             = 5,
+     in_length_x          = 6,
+     in_chr_byte          = 7,
+     in_write_x           = 14,
+     in_writeln_x         = 15,
+     in_read_x            = 16,
+     in_readln_x          = 17,
+     in_concat_x          = 18,
+     in_assigned_x        = 19,
+     in_str_x_string      = 20,
+     in_ofs_x             = 21,
+     in_sizeof_x          = 22,
+     in_typeof_x          = 23,
+     in_val_x             = 24,
+     in_reset_x           = 25,
+     in_rewrite_x         = 26,
+     in_low_x             = 27,
+     in_high_x            = 28,
+     in_seg_x             = 29,
+     in_pred_x            = 30,
+     in_succ_x            = 31,
+     in_reset_typedfile   = 32,
+     in_rewrite_typedfile = 33,
+     in_settextbuf_file_x = 34,
+     in_inc_x             = 35,
+     in_dec_x             = 36,
+     in_include_x_y       = 37,
+     in_exclude_x_y       = 38,
+     in_break             = 39,
+     in_continue          = 40,
+     in_assert_x_y        = 41,
+     in_addr_x            = 42,
+     in_typeinfo_x        = 43,
+     in_setlength_x       = 44,
+     in_finalize_x        = 45,
+     in_new_x             = 46,
+     in_dispose_x         = 47,
+     in_exit              = 48,
+     in_copy_x            = 49,
+     in_initialize_x      = 50,
+     in_leave             = 51, {macpas}
+     in_cycle             = 52, {macpas}
+     in_slice_x           = 53,
+     in_unaligned_x       = 54,
+     in_get_frame         = 56,
+     in_get_caller_addr   = 57,
+     in_get_caller_frame  = 58,
+     in_pack_x_y_z        = 59,
+     in_unpack_x_y_z      = 60,
+     in_bitsizeof_x       = 61,
+     in_writestr_x        = 62,
+     in_readstr_x         = 63,
+     in_abs_long          = 64,
+     in_ror_x             = 65,
+     in_ror_x_y           = 66,
+     in_rol_x             = 67,
+     in_rol_x_y           = 68,
+     in_objc_selector_x   = 69,
+     in_objc_protocol_x   = 70,
+     in_objc_encode_x     = 71,
+     in_sar_x_y           = 72,
+     in_sar_x             = 73,
+     in_bsf_x             = 74,
+     in_bsr_x             = 75,
+     in_default_x         = 76,
+     in_box_x             = 77, { managed platforms: wrap in class instance }
+     in_unbox_x_y         = 78, { manage platforms: extract from class instance }
+     in_popcnt_x          = 79,
+     in_aligned_x         = 80,
+     in_setstring_x_y_z   = 81,
+     in_insert_x_y_z      = 82,
+     in_delete_x_y_z      = 83,
+     in_reset_typedfile_name   = 84,
+     in_rewrite_typedfile_name = 85,
+     in_and_assign_x_y    = 86,
+     in_or_assign_x_y     = 87,
+     in_xor_assign_x_y    = 88,
+     in_sar_assign_x_y    = 89,
+     in_shl_assign_x_y    = 90,
+     in_shr_assign_x_y    = 91,
+     in_rol_assign_x_y    = 92,
+     in_ror_assign_x_y    = 93,
+     in_neg_assign_x      = 94,
+     in_not_assign_x      = 95,
+
+{ Internal constant functions }
+     in_const_sqr        = 100,
+     in_const_abs        = 101,
+     in_const_odd        = 102,
+     in_const_ptr        = 103,
+     in_const_swap_word  = 104,
+     in_const_swap_long  = 105,
+     in_lo_qword         = 106,
+     in_hi_qword         = 107,
+     in_const_swap_qword = 108,
+     in_prefetch_var     = 109,
+
+{ FPU functions }
+     in_trunc_real       = 120,
+     in_round_real       = 121,
+     in_frac_real        = 122,
+     in_int_real         = 123,
+     in_exp_real         = 124,
+     in_cos_real         = 125,
+     in_pi_real          = 126,
+     in_abs_real         = 127,
+     in_sqr_real         = 128,
+     in_sqrt_real        = 129,
+     in_arctan_real      = 130,
+     in_ln_real          = 131,
+     in_sin_real         = 132,
+     in_fma_single       = 133,
+     in_fma_double       = 134,
+     in_fma_extended     = 135,
+     in_fma_float128     = 136,
+
+{ MMX functions }
+{ these contants are used by the mmx unit }
+
+     { MMX }
+     in_mmx_pcmpeqb      = 200,
+     in_mmx_pcmpeqw      = 201,
+     in_mmx_pcmpeqd      = 202,
+     in_mmx_pcmpgtb      = 203,
+     in_mmx_pcmpgtw      = 204,
+     in_mmx_pcmpgtd      = 205
+
+     { 3DNow }
+
+     { SSE }
+   );
+
+implementation
+end.

+ 33 - 34
compiler/htypechk.pas

@@ -27,7 +27,7 @@ interface
 
 
     uses
     uses
       cclasses,cmsgs,tokens,
       cclasses,cmsgs,tokens,
-      node,globtype,
+      node,globtype,compinnr,
       symconst,symtype,symdef,symsym,symbase,
       symconst,symtype,symdef,symsym,symbase,
       pgentype;
       pgentype;
 
 
@@ -35,7 +35,7 @@ interface
       Ttok2nodeRec=record
       Ttok2nodeRec=record
         tok : ttoken;
         tok : ttoken;
         nod : tnodetype;
         nod : tnodetype;
-        inr : integer; // inline number
+        inr : tinlinenumber;
         op_overloading_supported : boolean;
         op_overloading_supported : boolean;
       end;
       end;
 
 
@@ -105,37 +105,36 @@ interface
          ra_addr_taken);
          ra_addr_taken);
       tregableinfoflags = set of tregableinfoflag;
       tregableinfoflags = set of tregableinfoflag;
 
 
-  {$i compinnr.inc}
     const
     const
       tok2nodes=27;
       tok2nodes=27;
       tok2node:array[1..tok2nodes] of ttok2noderec=(
       tok2node:array[1..tok2nodes] of ttok2noderec=(
-        (tok:_PLUS       ;nod:addn;inr:-1;op_overloading_supported:true),      { binary overloading supported }
-        (tok:_MINUS      ;nod:subn;inr:-1;op_overloading_supported:true),      { binary and unary overloading supported }
-        (tok:_STAR       ;nod:muln;inr:-1;op_overloading_supported:true),      { binary overloading supported }
-        (tok:_SLASH      ;nod:slashn;inr:-1;op_overloading_supported:true),    { binary overloading supported }
-        (tok:_EQ         ;nod:equaln;inr:-1;op_overloading_supported:true),    { binary overloading supported }
-        (tok:_GT         ;nod:gtn;inr:-1;op_overloading_supported:true),       { binary overloading supported }
-        (tok:_LT         ;nod:ltn;inr:-1;op_overloading_supported:true),       { binary overloading supported }
-        (tok:_GTE        ;nod:gten;inr:-1;op_overloading_supported:true),      { binary overloading supported }
-        (tok:_LTE        ;nod:lten;inr:-1;op_overloading_supported:true),      { binary overloading supported }
-        (tok:_SYMDIF     ;nod:symdifn;inr:-1;op_overloading_supported:true),   { binary overloading supported }
-        (tok:_STARSTAR   ;nod:starstarn;inr:-1;op_overloading_supported:true), { binary overloading supported }
-        (tok:_OP_AS      ;nod:asn;inr:-1;op_overloading_supported:false),      { binary overloading NOT supported }
-        (tok:_OP_IN      ;nod:inn;inr:-1;op_overloading_supported:true),       { binary overloading supported }
-        (tok:_OP_IS      ;nod:isn;inr:-1;op_overloading_supported:false),      { binary overloading NOT supported }
-        (tok:_OP_OR      ;nod:orn;inr:-1;op_overloading_supported:true),       { binary overloading supported }
-        (tok:_OP_AND     ;nod:andn;inr:-1;op_overloading_supported:true),      { binary overloading supported }
-        (tok:_OP_DIV     ;nod:divn;inr:-1;op_overloading_supported:true),      { binary overloading supported }
-        (tok:_OP_NOT     ;nod:notn;inr:-1;op_overloading_supported:true),      { unary overloading supported }
-        (tok:_OP_MOD     ;nod:modn;inr:-1;op_overloading_supported:true),      { binary overloading supported }
-        (tok:_OP_SHL     ;nod:shln;inr:-1;op_overloading_supported:true),      { binary overloading supported }
-        (tok:_OP_SHR     ;nod:shrn;inr:-1;op_overloading_supported:true),      { binary overloading supported }
-        (tok:_OP_XOR     ;nod:xorn;inr:-1;op_overloading_supported:true),      { binary overloading supported }
-        (tok:_ASSIGNMENT ;nod:assignn;inr:-1;op_overloading_supported:true),   { unary overloading supported }
-        (tok:_OP_EXPLICIT;nod:assignn;inr:-1;op_overloading_supported:true),   { unary overloading supported }
-        (tok:_NE         ;nod:unequaln;inr:-1;op_overloading_supported:true),  { binary overloading supported }
-        (tok:_OP_INC     ;nod:inlinen;inr:in_inc_x;op_overloading_supported:true),{ unary overloading supported }
-        (tok:_OP_DEC     ;nod:inlinen;inr:in_dec_x;op_overloading_supported:true) { unary overloading supported }
+        (tok:_PLUS       ;nod:addn;inr:in_none;op_overloading_supported:true),      { binary overloading supported }
+        (tok:_MINUS      ;nod:subn;inr:in_none;op_overloading_supported:true),      { binary and unary overloading supported }
+        (tok:_STAR       ;nod:muln;inr:in_none;op_overloading_supported:true),      { binary overloading supported }
+        (tok:_SLASH      ;nod:slashn;inr:in_none;op_overloading_supported:true),    { binary overloading supported }
+        (tok:_EQ         ;nod:equaln;inr:in_none;op_overloading_supported:true),    { binary overloading supported }
+        (tok:_GT         ;nod:gtn;inr:in_none;op_overloading_supported:true),       { binary overloading supported }
+        (tok:_LT         ;nod:ltn;inr:in_none;op_overloading_supported:true),       { binary overloading supported }
+        (tok:_GTE        ;nod:gten;inr:in_none;op_overloading_supported:true),      { binary overloading supported }
+        (tok:_LTE        ;nod:lten;inr:in_none;op_overloading_supported:true),      { binary overloading supported }
+        (tok:_SYMDIF     ;nod:symdifn;inr:in_none;op_overloading_supported:true),   { binary overloading supported }
+        (tok:_STARSTAR   ;nod:starstarn;inr:in_none;op_overloading_supported:true), { binary overloading supported }
+        (tok:_OP_AS      ;nod:asn;inr:in_none;op_overloading_supported:false),      { binary overloading NOT supported }
+        (tok:_OP_IN      ;nod:inn;inr:in_none;op_overloading_supported:true),       { binary overloading supported }
+        (tok:_OP_IS      ;nod:isn;inr:in_none;op_overloading_supported:false),      { binary overloading NOT supported }
+        (tok:_OP_OR      ;nod:orn;inr:in_none;op_overloading_supported:true),       { binary overloading supported }
+        (tok:_OP_AND     ;nod:andn;inr:in_none;op_overloading_supported:true),      { binary overloading supported }
+        (tok:_OP_DIV     ;nod:divn;inr:in_none;op_overloading_supported:true),      { binary overloading supported }
+        (tok:_OP_NOT     ;nod:notn;inr:in_none;op_overloading_supported:true),      { unary overloading supported }
+        (tok:_OP_MOD     ;nod:modn;inr:in_none;op_overloading_supported:true),      { binary overloading supported }
+        (tok:_OP_SHL     ;nod:shln;inr:in_none;op_overloading_supported:true),      { binary overloading supported }
+        (tok:_OP_SHR     ;nod:shrn;inr:in_none;op_overloading_supported:true),      { binary overloading supported }
+        (tok:_OP_XOR     ;nod:xorn;inr:in_none;op_overloading_supported:true),      { binary overloading supported }
+        (tok:_ASSIGNMENT ;nod:assignn;inr:in_none;op_overloading_supported:true),   { unary overloading supported }
+        (tok:_OP_EXPLICIT;nod:assignn;inr:in_none;op_overloading_supported:true),   { unary overloading supported }
+        (tok:_NE         ;nod:unequaln;inr:in_none;op_overloading_supported:true),  { binary overloading supported }
+        (tok:_OP_INC     ;nod:inlinen;inr:in_inc_x;op_overloading_supported:true),  { unary overloading supported }
+        (tok:_OP_DEC     ;nod:inlinen;inr:in_dec_x;op_overloading_supported:true)   { unary overloading supported }
       );
       );
 
 
       tok2ops=4;
       tok2ops=4;
@@ -543,7 +542,7 @@ implementation
       end;
       end;
 
 
 
 
-    function isunaryoperatoroverloadable(treetyp:tnodetype;inlinenumber:integer;ld:tdef) : boolean;
+    function isunaryoperatoroverloadable(treetyp:tnodetype;inlinenumber:tinlinenumber;ld:tdef) : boolean;
       begin
       begin
         result:=false;
         result:=false;
         case treetyp of
         case treetyp of
@@ -704,8 +703,8 @@ implementation
         operpd  : tprocdef;
         operpd  : tprocdef;
         ppn     : tcallparanode;
         ppn     : tcallparanode;
         candidates : tcallcandidates;
         candidates : tcallcandidates;
-        cand_cnt,
-        inlinenumber: integer;
+        cand_cnt : integer;
+        inlinenumber: tinlinenumber;
       begin
       begin
         result:=false;
         result:=false;
         operpd:=nil;
         operpd:=nil;
@@ -717,7 +716,7 @@ implementation
         if t.nodetype=inlinen then
         if t.nodetype=inlinen then
           inlinenumber:=tinlinenode(t).inlinenumber
           inlinenumber:=tinlinenode(t).inlinenumber
         else
         else
-          inlinenumber:=-1;
+          inlinenumber:=in_none;
 
 
         if not isunaryoperatoroverloadable(t.nodetype,inlinenumber,ld) then
         if not isunaryoperatoroverloadable(t.nodetype,inlinenumber,ld) then
           exit;
           exit;

+ 1 - 1
compiler/i386/n386inl.pas

@@ -38,7 +38,7 @@ interface
 implementation
 implementation
 
 
   uses
   uses
-    globtype,globals,
+    globtype,globals,compinnr,
     defutil,
     defutil,
     aasmbase,aasmdata,
     aasmbase,aasmdata,
     cgbase,pass_2,
     cgbase,pass_2,

+ 1 - 1
compiler/i8086/n8086inl.pas

@@ -47,7 +47,7 @@ implementation
     ninl,
     ninl,
     systems,
     systems,
     globtype,globals,
     globtype,globals,
-    cutils,verbose,
+    cutils,verbose,compinnr,
     constexp,
     constexp,
     symconst,
     symconst,
     defutil,
     defutil,

+ 1 - 1
compiler/i8086/n8086tcon.pas

@@ -43,7 +43,7 @@ interface
 implementation
 implementation
 
 
 uses
 uses
-  verbose,
+  verbose,compinnr,
   ncon,ncnv,ninl,nld,
   ncon,ncnv,ninl,nld,
   defcmp,defutil,
   defcmp,defutil,
   aasmtai,
   aasmtai,

+ 1 - 1
compiler/jvm/njvmadd.pas

@@ -53,7 +53,7 @@ interface
 
 
     uses
     uses
       systems,
       systems,
-      cutils,verbose,constexp,globtype,
+      cutils,verbose,constexp,globtype,compinnr,
       symconst,symtable,symdef,symcpu,
       symconst,symtable,symdef,symcpu,
       paramgr,procinfo,pass_1,
       paramgr,procinfo,pass_1,
       aasmbase,aasmtai,aasmdata,aasmcpu,defutil,
       aasmbase,aasmtai,aasmdata,aasmcpu,defutil,

+ 1 - 1
compiler/jvm/njvmcal.pas

@@ -62,7 +62,7 @@ interface
 implementation
 implementation
 
 
     uses
     uses
-      verbose,globals,globtype,constexp,cutils,
+      verbose,globals,globtype,constexp,cutils,compinnr,
       symconst,symtable,symsym,symcpu,defutil,
       symconst,symtable,symsym,symcpu,defutil,
       cgutils,tgobj,procinfo,htypechk,
       cgutils,tgobj,procinfo,htypechk,
       cpubase,aasmbase,aasmdata,aasmcpu,
       cpubase,aasmbase,aasmdata,aasmcpu,

+ 1 - 1
compiler/jvm/njvmcnv.pas

@@ -97,7 +97,7 @@ interface
 implementation
 implementation
 
 
    uses
    uses
-      verbose,globals,globtype,constexp,cutils,
+      verbose,globals,globtype,constexp,cutils,compinnr,
       symbase,symconst,symdef,symsym,symcpu,symtable,aasmbase,aasmdata,
       symbase,symconst,symdef,symsym,symcpu,symtable,aasmbase,aasmdata,
       defutil,defcmp,jvmdef,
       defutil,defcmp,jvmdef,
       cgbase,cgutils,pass_1,pass_2,
       cgbase,cgutils,pass_1,pass_2,

+ 1 - 1
compiler/jvm/njvminl.pas

@@ -71,7 +71,7 @@ interface
 implementation
 implementation
 
 
     uses
     uses
-      cutils,globals,verbose,globtype,constexp,fmodule,
+      cutils,globals,verbose,globtype,constexp,fmodule,compinnr,
       aasmbase,aasmtai,aasmdata,aasmcpu,
       aasmbase,aasmtai,aasmdata,aasmcpu,
       symtype,symconst,symdef,symsym,symcpu,symtable,jvmdef,
       symtype,symconst,symdef,symsym,symcpu,symtable,jvmdef,
       defutil,
       defutil,

+ 1 - 1
compiler/jvm/njvmld.pas

@@ -61,7 +61,7 @@ type
 implementation
 implementation
 
 
 uses
 uses
-  verbose,globals,
+  verbose,globals,compinnr,
   nbas,nld,ncal,ncon,ninl,nmem,ncnv,nutils,
   nbas,nld,ncal,ncon,ninl,nmem,ncnv,nutils,
   symconst,symsym,symdef,symtable,defutil,jvmdef,
   symconst,symsym,symdef,symtable,defutil,jvmdef,
   paramgr,
   paramgr,

+ 1 - 1
compiler/jvm/njvmmat.pas

@@ -51,7 +51,7 @@ implementation
 
 
     uses
     uses
       globtype,systems,constexp,
       globtype,systems,constexp,
-      cutils,verbose,globals,
+      cutils,verbose,globals,compinnr,
       symconst,symdef,
       symconst,symdef,
       aasmbase,aasmcpu,aasmtai,aasmdata,
       aasmbase,aasmcpu,aasmtai,aasmdata,
       defutil,
       defutil,

+ 1 - 1
compiler/jvm/njvmutil.pas

@@ -61,7 +61,7 @@ interface
 implementation
 implementation
 
 
     uses
     uses
-      verbose,cutils,globtype,globals,constexp,fmodule,
+      verbose,cutils,globtype,globals,constexp,fmodule,compinnr,
       aasmdata,aasmtai,cpubase,aasmbase,aasmcpu,
       aasmdata,aasmtai,cpubase,aasmbase,aasmcpu,
       symbase,symcpu,symtable,defutil,jvmdef,
       symbase,symcpu,symtable,defutil,jvmdef,
       ncnv,ncon,ninl,ncal,nld,nmem,
       ncnv,ncon,ninl,ncal,nld,nmem,

+ 2 - 2
compiler/nadd.pas

@@ -118,7 +118,7 @@ implementation
 {$ELSE}
 {$ELSE}
       fksysutl,
       fksysutl,
 {$ENDIF}
 {$ENDIF}
-      globtype,systems,constexp,
+      globtype,systems,constexp,compinnr,
       cutils,verbose,globals,widestr,
       cutils,verbose,globals,widestr,
       symconst,symdef,symsym,symcpu,symtable,defutil,defcmp,
       symconst,symdef,symsym,symcpu,symtable,defutil,defcmp,
       cgbase,
       cgbase,
@@ -2802,7 +2802,7 @@ implementation
 
 
     function taddnode.try_fma(ld,rd : tdef) : tnode;
     function taddnode.try_fma(ld,rd : tdef) : tnode;
       var
       var
-        inlinennr : Integer;
+        inlinennr : tinlinenumber;
       begin
       begin
         result:=nil;
         result:=nil;
         if (cs_opt_fastmath in current_settings.optimizerswitches) and
         if (cs_opt_fastmath in current_settings.optimizerswitches) and

+ 6 - 6
compiler/ncal.pas

@@ -311,7 +311,7 @@ implementation
       systems,
       systems,
       verbose,globals,fmodule,
       verbose,globals,fmodule,
       aasmbase,aasmdata,
       aasmbase,aasmdata,
-      symconst,defutil,defcmp,
+      symconst,defutil,defcmp,compinnr,
       htypechk,pass_1,
       htypechk,pass_1,
       ncnv,nflw,nld,ninl,nadd,ncon,nmem,nset,nobjc,
       ncnv,nflw,nld,ninl,nadd,ncon,nmem,nset,nobjc,
       pgenutil,
       pgenutil,
@@ -3751,8 +3751,8 @@ implementation
                 begin
                 begin
                   { convert types to those of the prototype, this is required by functions like ror, rol, sar
                   { convert types to those of the prototype, this is required by functions like ror, rol, sar
                     some use however a dummy type (Typedfile) so this would break them }
                     some use however a dummy type (Typedfile) so this would break them }
-                  if not(tprocdef(procdefinition).extnumber in [in_Reset_TypedFile,in_Rewrite_TypedFile,
-                                                                in_reset_typedfile_name,in_rewrite_typedfile_name]) then
+                  if not(tinlinenumber(tprocdef(procdefinition).extnumber) in
+                       [in_Reset_TypedFile,in_Rewrite_TypedFile,in_reset_typedfile_name,in_rewrite_typedfile_name]) then
                     begin
                     begin
                       { bind parasyms to the callparanodes and insert hidden parameters }
                       { bind parasyms to the callparanodes and insert hidden parameters }
                       bind_parasym;
                       bind_parasym;
@@ -3765,17 +3765,17 @@ implementation
                   { ptr and settextbuf need two args }
                   { ptr and settextbuf need two args }
                   if assigned(tcallparanode(left).right) then
                   if assigned(tcallparanode(left).right) then
                    begin
                    begin
-                     hpt:=geninlinenode(tprocdef(procdefinition).extnumber,is_const,left);
+                     hpt:=geninlinenode(tinlinenumber(tprocdef(procdefinition).extnumber),is_const,left);
                      left:=nil;
                      left:=nil;
                    end
                    end
                   else
                   else
                    begin
                    begin
-                     hpt:=geninlinenode(tprocdef(procdefinition).extnumber,is_const,tcallparanode(left).left);
+                     hpt:=geninlinenode(tinlinenumber(tprocdef(procdefinition).extnumber),is_const,tcallparanode(left).left);
                      tcallparanode(left).left:=nil;
                      tcallparanode(left).left:=nil;
                    end;
                    end;
                 end
                 end
                else
                else
-                hpt:=geninlinenode(tprocdef(procdefinition).extnumber,is_const,nil);
+                hpt:=geninlinenode(tinlinenumber(tprocdef(procdefinition).extnumber),is_const,nil);
                result:=hpt;
                result:=hpt;
                exit;
                exit;
              end;
              end;

+ 1 - 1
compiler/ncginl.pas

@@ -70,7 +70,7 @@ implementation
 
 
     uses
     uses
       globtype,constexp,
       globtype,constexp,
-      verbose,globals,
+      verbose,globals,compinnr,
       symconst,symtype,symdef,defutil,
       symconst,symtype,symdef,defutil,
       aasmbase,aasmdata,
       aasmbase,aasmdata,
       cgbase,pass_2,
       cgbase,pass_2,

+ 1 - 1
compiler/ncnv.pas

@@ -299,7 +299,7 @@ interface
 implementation
 implementation
 
 
    uses
    uses
-      globtype,systems,constexp,
+      globtype,systems,constexp,compinnr,
       cutils,verbose,globals,widestr,
       cutils,verbose,globals,widestr,
       symconst,symdef,symsym,symcpu,symtable,
       symconst,symdef,symsym,symcpu,symtable,
       ncon,ncal,nset,nadd,nmem,nmat,nbas,nutils,ninl,
       ncon,ncal,nset,nadd,nmem,nmat,nbas,nutils,ninl,

+ 1 - 1
compiler/nflw.pas

@@ -241,7 +241,7 @@ interface
 implementation
 implementation
 
 
     uses
     uses
-      globtype,systems,constexp,
+      globtype,systems,constexp,compinnr,
       cutils,verbose,globals,
       cutils,verbose,globals,
       symconst,symtable,paramgr,defcmp,defutil,htypechk,pass_1,
       symconst,symtable,paramgr,defcmp,defutil,htypechk,pass_1,
       ncal,nadd,ncon,nmem,nld,ncnv,nbas,nutils,ninl,nset,ngenutil,
       ncal,nadd,ncon,nmem,nld,ncnv,nbas,nutils,ninl,nset,ngenutil,

+ 1 - 1
compiler/ngenutil.pas

@@ -132,7 +132,7 @@ interface
 implementation
 implementation
 
 
     uses
     uses
-      verbose,version,globals,cutils,constexp,
+      verbose,version,globals,cutils,constexp,compinnr,
       systems,procinfo,fmodule,pparautl,
       systems,procinfo,fmodule,pparautl,
       aasmbase,aasmtai,aasmcnst,
       aasmbase,aasmtai,aasmcnst,
       symbase,symtable,defutil,
       symbase,symtable,defutil,

+ 1 - 1
compiler/ngtcon.pas

@@ -144,7 +144,7 @@ implementation
 
 
 uses
 uses
    SysUtils,
    SysUtils,
-   systems,tokens,verbose,
+   systems,tokens,verbose,compinnr,
    cutils,globals,widestr,scanner,
    cutils,globals,widestr,scanner,
    symtable,
    symtable,
    defutil,defcmp,
    defutil,defcmp,

+ 10 - 13
compiler/ninl.pas

@@ -26,15 +26,12 @@ unit ninl;
 interface
 interface
 
 
     uses
     uses
-       node,htypechk,symtype;
-
-    {$i compinnr.inc}
-
+       node,htypechk,symtype,compinnr;
     type
     type
        tinlinenode = class(tunarynode)
        tinlinenode = class(tunarynode)
-          inlinenumber : byte;
-          constructor create(number : byte;is_const:boolean;l : tnode);virtual;
-          constructor createintern(number : byte;is_const:boolean;l : tnode);virtual;
+          inlinenumber : tinlinenumber;
+          constructor create(number : tinlinenumber;is_const:boolean;l : tnode);virtual;
+          constructor createintern(number : tinlinenumber;is_const:boolean;l : tnode);virtual;
           constructor ppuload(t:tnodetype;ppufile:tcompilerppufile);override;
           constructor ppuload(t:tnodetype;ppufile:tcompilerppufile);override;
           procedure ppuwrite(ppufile:tcompilerppufile);override;
           procedure ppuwrite(ppufile:tcompilerppufile);override;
           function dogetcopy : tnode;override;
           function dogetcopy : tnode;override;
@@ -116,7 +113,7 @@ interface
     var
     var
        cinlinenode : tinlinenodeclass = tinlinenode;
        cinlinenode : tinlinenodeclass = tinlinenode;
 
 
-   function geninlinenode(number : byte;is_const:boolean;l : tnode) : tinlinenode;
+   function geninlinenode(number : tinlinenumber;is_const:boolean;l : tnode) : tinlinenode;
 
 
 implementation
 implementation
 
 
@@ -130,7 +127,7 @@ implementation
       nobjc,objcdef,
       nobjc,objcdef,
       cgbase,procinfo;
       cgbase,procinfo;
 
 
-   function geninlinenode(number : byte;is_const:boolean;l : tnode) : tinlinenode;
+   function geninlinenode(number : tinlinenumber;is_const:boolean;l : tnode) : tinlinenode;
 
 
      begin
      begin
         geninlinenode:=cinlinenode.create(number,is_const,l);
         geninlinenode:=cinlinenode.create(number,is_const,l);
@@ -140,7 +137,7 @@ implementation
                            TINLINENODE
                            TINLINENODE
 *****************************************************************************}
 *****************************************************************************}
 
 
-    constructor tinlinenode.create(number : byte;is_const:boolean;l : tnode);
+    constructor tinlinenode.create(number : tinlinenumber;is_const:boolean;l : tnode);
 
 
       begin
       begin
          inherited create(inlinen,l);
          inherited create(inlinen,l);
@@ -150,7 +147,7 @@ implementation
       end;
       end;
 
 
 
 
-    constructor tinlinenode.createintern(number : byte; is_const : boolean;
+    constructor tinlinenode.createintern(number : tinlinenumber; is_const : boolean;
      l : tnode);
      l : tnode);
       begin
       begin
          create(number,is_const,l);
          create(number,is_const,l);
@@ -161,14 +158,14 @@ implementation
     constructor tinlinenode.ppuload(t:tnodetype;ppufile:tcompilerppufile);
     constructor tinlinenode.ppuload(t:tnodetype;ppufile:tcompilerppufile);
       begin
       begin
         inherited ppuload(t,ppufile);
         inherited ppuload(t,ppufile);
-        inlinenumber:=ppufile.getbyte;
+        inlinenumber:=tinlinenumber(ppufile.getlongint);
       end;
       end;
 
 
 
 
     procedure tinlinenode.ppuwrite(ppufile:tcompilerppufile);
     procedure tinlinenode.ppuwrite(ppufile:tcompilerppufile);
       begin
       begin
         inherited ppuwrite(ppufile);
         inherited ppuwrite(ppufile);
-        ppufile.putbyte(inlinenumber);
+        ppufile.putlongint(longint(inlinenumber));
       end;
       end;
 
 
 
 

+ 1 - 1
compiler/nld.pas

@@ -176,7 +176,7 @@ interface
 implementation
 implementation
 
 
     uses
     uses
-      verbose,globtype,globals,systems,constexp,
+      verbose,globtype,globals,systems,constexp,compinnr,
       symtable,
       symtable,
       defutil,defcmp,
       defutil,defcmp,
       cpuinfo,
       cpuinfo,

+ 1 - 1
compiler/nmat.pas

@@ -95,7 +95,7 @@ implementation
 
 
     uses
     uses
       systems,
       systems,
-      verbose,globals,cutils,
+      verbose,globals,cutils,compinnr,
       globtype,constexp,
       globtype,constexp,
       symconst,symtype,symdef,
       symconst,symtype,symdef,
       defutil,
       defutil,

+ 1 - 1
compiler/nopt.pas

@@ -87,7 +87,7 @@ var
 implementation
 implementation
 
 
 uses cutils, systems,
 uses cutils, systems,
-     htypechk, defutil, defcmp, globtype, globals, cpubase,
+     htypechk, defutil, defcmp, globtype, globals, cpubase, compinnr,
      ncnv, ncon, ncal, ninl, nld, nmem,
      ncnv, ncon, ncal, ninl, nld, nmem,
      verbose, symconst,symdef, cgbase, procinfo;
      verbose, symconst,symdef, cgbase, procinfo;
 
 

+ 1 - 1
compiler/nutils.pas

@@ -154,7 +154,7 @@ interface
 implementation
 implementation
 
 
     uses
     uses
-      cutils,verbose,globals,
+      cutils,verbose,globals,compinnr,
       symconst,symdef,
       symconst,symdef,
       defutil,
       defutil,
       nbas,ncon,ncnv,nld,nflw,nset,ncal,nadd,nmem,ninl,
       nbas,ncon,ncnv,nld,nflw,nset,ncal,nadd,nmem,ninl,

+ 1 - 1
compiler/optconstprop.pas

@@ -55,7 +55,7 @@ unit optconstprop;
   implementation
   implementation
 
 
     uses
     uses
-      pass_1,procinfo,
+      pass_1,procinfo,compinnr,
       symsym, symconst,
       symsym, symconst,
       nutils, nbas, ncnv, nld, nflw, ncal, ninl;
       nutils, nbas, ncnv, nld, nflw, ncal, ninl;
 
 

+ 1 - 1
compiler/optcse.pas

@@ -48,7 +48,7 @@ unit optcse;
     uses
     uses
       globtype,globals,
       globtype,globals,
       cutils,cclasses,
       cutils,cclasses,
-      nutils,
+      nutils,compinnr,
       nbas,nld,ninl,ncal,nadd,nmem,
       nbas,nld,ninl,ncal,nadd,nmem,
       pass_1,
       pass_1,
       symconst,symdef,symsym,
       symconst,symdef,symsym,

+ 2 - 2
compiler/optloadmodifystore.pas

@@ -35,13 +35,13 @@ unit optloadmodifystore;
   implementation
   implementation
 
 
     uses
     uses
-      globtype,verbose,nutils,
+      globtype,verbose,nutils,compinnr,
       defutil,defcmp,htypechk,pass_1,
       defutil,defcmp,htypechk,pass_1,
       nadd,ncal,ncnv,ninl,nld;
       nadd,ncal,ncnv,ninl,nld;
 
 
     function try_opt_assignmentnode(assignmentnode: tassignmentnode): tnode;
     function try_opt_assignmentnode(assignmentnode: tassignmentnode): tnode;
       var
       var
-        newinlinenodetype: byte;
+        newinlinenodetype: tinlinenumber;
       begin
       begin
         result:=nil;
         result:=nil;
         with assignmentnode do
         with assignmentnode do

+ 1 - 1
compiler/optloop.pas

@@ -36,7 +36,7 @@ unit optloop;
   implementation
   implementation
 
 
     uses
     uses
-      cutils,cclasses,
+      cutils,cclasses,compinnr,
       globtype,globals,constexp,
       globtype,globals,constexp,
       verbose,
       verbose,
       symdef,symsym,
       symdef,symsym,

+ 1 - 1
compiler/pdecl.pas

@@ -54,7 +54,7 @@ implementation
        cutils,
        cutils,
        { global }
        { global }
        globals,tokens,verbose,widestr,constexp,
        globals,tokens,verbose,widestr,constexp,
-       systems,aasmdata,fmodule,
+       systems,aasmdata,fmodule,compinnr,
        { symtable }
        { symtable }
        symconst,symbase,symtype,symcpu,symcreat,defutil,
        symconst,symbase,symtype,symcpu,symcreat,defutil,
        { pass 1 }
        { pass 1 }

+ 2 - 2
compiler/pexpr.pas

@@ -27,7 +27,7 @@ interface
 
 
     uses
     uses
       symtype,symdef,symbase,
       symtype,symdef,symbase,
-      node,ncal,
+      node,ncal,compinnr,
       tokens,globtype,globals,constexp,
       tokens,globtype,globals,constexp,
       pgentype;
       pgentype;
 
 
@@ -260,7 +260,7 @@ implementation
        end;
        end;
 
 
 
 
-     function statement_syssym(l : byte) : tnode;
+     function statement_syssym(l : tinlinenumber) : tnode;
       var
       var
         p1,p2,paras  : tnode;
         p1,p2,paras  : tnode;
         err,
         err,

+ 2 - 2
compiler/pinline.pas

@@ -47,7 +47,7 @@ implementation
     uses
     uses
        { global }
        { global }
        globtype,tokens,verbose,constexp,
        globtype,tokens,verbose,constexp,
-       systems,
+       systems,compinnr,
        { symtable }
        { symtable }
        symbase,symconst,symdef,symsym,symtable,defutil,
        symbase,symconst,symdef,symsym,symtable,defutil,
        { pass 1 }
        { pass 1 }
@@ -632,7 +632,7 @@ implementation
       end;
       end;
 
 
 
 
-    function inline_copy_insert_delete(nr:byte;name:string) : tnode;
+    function inline_copy_insert_delete(nr:tinlinenumber;name:string) : tnode;
       var
       var
         paras   : tnode;
         paras   : tnode;
         { for easy exiting if something goes wrong }
         { for easy exiting if something goes wrong }

+ 2 - 2
compiler/ppc8086.lpi

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
 <CONFIG>
   <ProjectOptions>
   <ProjectOptions>
-    <Version Value="9"/>
+    <Version Value="10"/>
     <PathDelim Value="\"/>
     <PathDelim Value="\"/>
     <General>
     <General>
       <Flags>
       <Flags>
@@ -500,7 +500,7 @@
         <IsPartOfProject Value="True"/>
         <IsPartOfProject Value="True"/>
       </Unit116>
       </Unit116>
       <Unit117>
       <Unit117>
-        <Filename Value="compinnr.inc"/>
+        <Filename Value="compinnr.pas"/>
         <IsPartOfProject Value="True"/>
         <IsPartOfProject Value="True"/>
       </Unit117>
       </Unit117>
       <Unit118>
       <Unit118>

+ 1 - 1
compiler/ppu.pas

@@ -43,7 +43,7 @@ type
 {$endif Test_Double_checksum}
 {$endif Test_Double_checksum}
 
 
 const
 const
-  CurrentPPUVersion = 191;
+  CurrentPPUVersion = 192;
 
 
 { unit flags }
 { unit flags }
   uf_init                = $000001; { unit has initialization section }
   uf_init                = $000001; { unit has initialization section }

+ 1 - 1
compiler/psystem.pas

@@ -40,7 +40,7 @@ interface
 implementation
 implementation
 
 
     uses
     uses
-      globals,globtype,verbose,constexp,cpuinfo,
+      globals,globtype,verbose,constexp,cpuinfo,compinnr,
       systems,
       systems,
       symconst,symtype,symsym,symdef,symcpu,symtable,
       symconst,symtype,symsym,symdef,symcpu,symtable,
       aasmtai,aasmcpu,
       aasmtai,aasmcpu,

+ 8 - 8
compiler/symsym.pas

@@ -26,7 +26,7 @@ interface
 
 
     uses
     uses
        { common }
        { common }
-       cutils,
+       cutils,compinnr,
        { target }
        { target }
        globtype,globals,widestr,constexp,
        globtype,globals,widestr,constexp,
        { symtable }
        { symtable }
@@ -415,8 +415,8 @@ interface
        tenumsymclass = class of tenumsym;
        tenumsymclass = class of tenumsym;
 
 
        tsyssym = class(Tstoredsym)
        tsyssym = class(Tstoredsym)
-          number : longint;
-          constructor create(const n : string;l : longint);virtual;
+          number : tinlinenumber;
+          constructor create(const n : string;l : tinlinenumber);virtual;
           constructor ppuload(ppufile:tcompilerppufile);
           constructor ppuload(ppufile:tcompilerppufile);
           destructor  destroy;override;
           destructor  destroy;override;
           { do not override this routine in platform-specific subclasses,
           { do not override this routine in platform-specific subclasses,
@@ -2634,13 +2634,13 @@ implementation
       syssym_list : TFPHashObjectList;
       syssym_list : TFPHashObjectList;
 
 
 
 
-    constructor tsyssym.create(const n : string;l : longint);
+    constructor tsyssym.create(const n : string;l : tinlinenumber);
       var
       var
         s : shortstring;
         s : shortstring;
       begin
       begin
          inherited create(syssym,n,true);
          inherited create(syssym,n,true);
          number:=l;
          number:=l;
-         str(l,s);
+         str(longint(l),s);
          if assigned(syssym_list.find(s)) then
          if assigned(syssym_list.find(s)) then
            internalerror(2016060303);
            internalerror(2016060303);
          syssym_list.add(s,self);
          syssym_list.add(s,self);
@@ -2651,9 +2651,9 @@ implementation
         s : shortstring;
         s : shortstring;
       begin
       begin
          inherited ppuload(syssym,ppufile);
          inherited ppuload(syssym,ppufile);
-         number:=ppufile.getlongint;
+         number:=tinlinenumber(ppufile.getlongint);
          ppuload_platform(ppufile);
          ppuload_platform(ppufile);
-         str(number,s);
+         str(longint(number),s);
          if assigned(syssym_list.find(s)) then
          if assigned(syssym_list.find(s)) then
            internalerror(2016060304);
            internalerror(2016060304);
          syssym_list.add(s,self);
          syssym_list.add(s,self);
@@ -2667,7 +2667,7 @@ implementation
     procedure tsyssym.ppuwrite(ppufile:tcompilerppufile);
     procedure tsyssym.ppuwrite(ppufile:tcompilerppufile);
       begin
       begin
          inherited ppuwrite(ppufile);
          inherited ppuwrite(ppufile);
-         ppufile.putlongint(number);
+         ppufile.putlongint(longint(number));
          writeentry(ppufile,ibsyssym);
          writeentry(ppufile,ibsyssym);
       end;
       end;
 
 

+ 1 - 1
compiler/x86/nx86add.pas

@@ -68,7 +68,7 @@ unit nx86add;
 
 
     uses
     uses
       globtype,globals,
       globtype,globals,
-      verbose,cutils,
+      verbose,cutils,compinnr,
       cpuinfo,
       cpuinfo,
       aasmbase,aasmdata,aasmcpu,
       aasmbase,aasmdata,aasmcpu,
       symconst,symdef,
       symconst,symdef,

+ 1 - 1
compiler/x86/nx86inl.pas

@@ -78,7 +78,7 @@ implementation
     uses
     uses
       systems,
       systems,
       globtype,globals,
       globtype,globals,
-      verbose,
+      verbose,compinnr,
       defutil,
       defutil,
       aasmbase,aasmdata,aasmcpu,
       aasmbase,aasmdata,aasmcpu,
       symtype,symdef,symcpu,
       symtype,symdef,symcpu,