瀏覽代碼

* truncated log to 20 revs

peter 26 年之前
父節點
當前提交
0887060ff2
共有 79 個文件被更改,包括 323 次插入14556 次删除
  1. 4 187
      compiler/aasm.pas
  2. 4 398
      compiler/ag386att.pas
  3. 4 76
      compiler/ag386bin.pas
  4. 4 147
      compiler/ag386int.pas
  5. 4 128
      compiler/ag386nsm.pas
  6. 5 2
      compiler/ag68kmpw.pas
  7. 4 155
      compiler/assemble.pas
  8. 4 5
      compiler/browcol.pas
  9. 4 244
      compiler/cg386add.pas
  10. 4 385
      compiler/cg386cal.pas
  11. 4 264
      compiler/cg386cnv.pas
  12. 4 89
      compiler/cg386con.pas
  13. 4 131
      compiler/cg386flw.pas
  14. 4 323
      compiler/cg386inl.pas
  15. 4 274
      compiler/cg386ld.pas
  16. 4 58
      compiler/cg386mat.pas
  17. 4 139
      compiler/cg386mem.pas
  18. 4 79
      compiler/cg386set.pas
  19. 4 4
      compiler/cg68kcal.pas
  20. 4 55
      compiler/cga68k.pas
  21. 4 778
      compiler/cgai386.pas
  22. 4 97
      compiler/cobjects.pas
  23. 4 63
      compiler/compiler.pas
  24. 4 78
      compiler/cpuasm.pas
  25. 4 66
      compiler/cpubase.pas
  26. 6 3
      compiler/cresstr.pas
  27. 4 44
      compiler/csopt386.pas
  28. 4 155
      compiler/daopt386.pas
  29. 5 2
      compiler/export.pas
  30. 4 367
      compiler/files.pas
  31. 4 496
      compiler/globals.pas
  32. 4 8
      compiler/globtype.pas
  33. 4 109
      compiler/hcodegen.pas
  34. 4 90
      compiler/htypechk.pas
  35. 5 2
      compiler/import.pas
  36. 4 195
      compiler/link.pas
  37. 5 5
      compiler/og386.pas
  38. 4 23
      compiler/og386cff.pas
  39. 4 498
      compiler/options.pas
  40. 4 305
      compiler/parser.pas
  41. 4 100
      compiler/pass_2.pas
  42. 4 35
      compiler/pbase.pas
  43. 4 615
      compiler/pdecl.pas
  44. 4 532
      compiler/pexpr.pas
  45. 4 575
      compiler/pmodules.pas
  46. 4 141
      compiler/popt386.pas
  47. 4 122
      compiler/pp.pas
  48. 4 128
      compiler/ppu.pas
  49. 4 334
      compiler/pstatmnt.pas
  50. 4 677
      compiler/psub.pas
  51. 4 30
      compiler/psystem.pas
  52. 4 128
      compiler/ptconst.pas
  53. 4 32
      compiler/ra386att.pas
  54. 4 22
      compiler/ra386dir.pas
  55. 4 31
      compiler/ra386int.pas
  56. 4 21
      compiler/rautils.pas
  57. 4 175
      compiler/scandir.inc
  58. 4 278
      compiler/scanner.pas
  59. 4 12
      compiler/switches.pas
  60. 4 603
      compiler/symdef.inc
  61. 4 87
      compiler/symdefh.inc
  62. 4 146
      compiler/symppu.inc
  63. 4 426
      compiler/symsym.inc
  64. 4 66
      compiler/symsymh.inc
  65. 4 772
      compiler/symtable.pas
  66. 4 319
      compiler/systems.pas
  67. 4 147
      compiler/tcadd.pas
  68. 4 199
      compiler/tccal.pas
  69. 4 123
      compiler/tccnv.pas
  70. 5 13
      compiler/tcflw.pas
  71. 4 154
      compiler/tcinl.pas
  72. 4 102
      compiler/tcld.pas
  73. 4 4
      compiler/tcmat.pas
  74. 4 53
      compiler/tcmem.pas
  75. 4 62
      compiler/temp_gen.pas
  76. 4 64
      compiler/tgeni386.pas
  77. 4 335
      compiler/tree.pas
  78. 4 271
      compiler/types.pas
  79. 4 95
      compiler/verbose.pas

+ 4 - 187
compiler/aasm.pas

@@ -1012,7 +1012,10 @@ uses
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.67  1999-11-05 16:01:45  jonas
+  Revision 1.68  1999-11-06 14:34:16  peter
+    * truncated log to 20 revs
+
+  Revision 1.67  1999/11/05 16:01:45  jonas
     + first implementation of choosing least used register for alignment code
     + first implementation of choosing least used register for alignment code
        (not yet working, between ifdef alignreg)
        (not yet working, between ifdef alignreg)
 
 
@@ -1081,190 +1084,4 @@ end.
   Revision 1.48  1999/05/28 09:11:39  peter
   Revision 1.48  1999/05/28 09:11:39  peter
     * also count ref when asmlabel^.name is used
     * also count ref when asmlabel^.name is used
 
 
-  Revision 1.47  1999/05/27 19:43:55  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.46  1999/05/21 13:54:38  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.45  1999/05/20 22:18:51  pierre
-   * fix from Peter for double bug reported 20/05/1999
-
-  Revision 1.44  1999/05/12 00:19:34  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.43  1999/05/08 20:38:02  jonas
-    * seperate OPTimizer INFO pointer field in tai object
-
-  Revision 1.42  1999/05/06 09:05:05  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.41  1999/05/02 22:41:46  peter
-    * moved section names to systems
-    * fixed nasm,intel writer
-
-  Revision 1.40  1999/04/21 09:43:28  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.39  1999/04/16 11:49:36  peter
-    + tempalloc
-    + -at to show temp alloc info in .s file
-
-  Revision 1.38  1999/04/14 09:14:44  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.37  1999/03/10 13:25:42  pierre
-    section order changed to get closer output from coff writer
-
-  Revision 1.36  1999/03/08 14:51:04  peter
-    + smartlinking for ag386bin
-
-  Revision 1.35  1999/03/05 13:09:48  peter
-    * first things for tai_cut support for ag386bin
-
-  Revision 1.34  1999/03/03 11:59:27  pierre
-   + getasmsymbol to search for existing assembler symbol only
-
-  Revision 1.33  1999/03/02 02:56:08  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.32  1999/03/01 13:31:59  pierre
-   * external used before implemented problem fixed
-
-  Revision 1.31  1999/02/25 21:02:16  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.30  1999/02/17 10:16:24  peter
-    * small fixes for the binary writer
-
-  Revision 1.29  1998/12/29 18:48:24  jonas
-    + optimize pascal code surrounding assembler blocks
-
-  Revision 1.28  1998/12/16 00:27:16  peter
-    * removed some obsolete version checks
-
-  Revision 1.27  1998/12/11 00:02:37  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.26  1998/12/01 23:36:31  pierre
-   * zero padded alignment was buggy
-
-  Revision 1.25  1998/11/30 09:42:52  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.24  1998/11/12 11:19:30  pierre
-   * fix for first line of function break
-
-  Revision 1.23  1998/10/14 15:56:37  pierre
-    * all references to comp suppressed for m68k
-
-  Revision 1.22  1998/10/12 12:20:38  pierre
-    + added tai_const_symbol_offset
-      for r : pointer = @var.field;
-    * better message for different arg names on implementation
-      of function
-
-  Revision 1.21  1998/10/08 17:17:07  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.20  1998/10/06 17:16:31  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.19  1998/10/01 20:19:11  jonas
-    + ait_marker support
-
-  Revision 1.18  1998/09/20 17:11:25  jonas
-    * released REGALLOC
-
-  Revision 1.17  1998/09/07 18:33:31  peter
-    + smartlinking for win95 imports
-
-  Revision 1.16  1998/09/03 17:08:37  pierre
-    * better lines for stabs
-      (no scroll back to if before else part
-      no return to case line at jump outside case)
-    + source lines also if not in order
-
-  Revision 1.15  1998/08/11 15:31:36  peter
-    * write extended to ppu file
-    * new version 0.99.7
-
-  Revision 1.14  1998/08/10 23:56:03  peter
-    * fixed extended writing
-
-  Revision 1.13  1998/08/10 14:49:33  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.12  1998/07/14 14:46:36  peter
-    * released NEWINPUT
-
-  Revision 1.11  1998/07/07 11:19:50  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.10  1998/06/08 22:59:41  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.9  1998/06/04 23:51:26  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.8  1998/05/23 01:20:53  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.7  1998/05/07 00:16:59  peter
-    * smartlinking for sets
-    + consts labels are now concated/generated in hcodegen
-    * moved some cpu code to cga and some none cpu depended code from cga
-      to tree and hcodegen and cleanup of hcodegen
-    * assembling .. output reduced for smartlinking ;)
-
-  Revision 1.6  1998/05/06 18:36:53  peter
-    * tai_section extended with code,data,bss sections and enumerated type
-    * ident 'compiled by FPC' moved to pmodules
-    * small fix for smartlink
-
-  Revision 1.5  1998/05/01 07:43:52  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.4  1998/04/29 10:33:40  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.3  1998/04/27 23:10:27  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.2  1998/04/09 15:46:37  florian
-    + register allocation tracing stuff added
-
 }
 }

+ 4 - 398
compiler/ag386att.pas

@@ -871,7 +871,10 @@ unit ag386att;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.19  1999-11-02 15:06:56  peter
+  Revision 1.20  1999-11-06 14:34:16  peter
+    * truncated log to 20 revs
+
+  Revision 1.19  1999/11/02 15:06:56  peter
     * import library fixes for win32
     * import library fixes for win32
     * alignment works again
     * alignment works again
 
 
@@ -937,401 +940,4 @@ end.
   Revision 1.100  1999/06/22 14:41:20  peter
   Revision 1.100  1999/06/22 14:41:20  peter
     * merged
     * merged
 
 
-  Revision 1.99  1999/06/14 17:47:44  peter
-    * merged
-
-  Revision 1.97.2.3  1999/06/22 14:40:27  peter
-    * small change to fpureg check
-
-  Revision 1.97.2.2  1999/06/22 14:20:19  peter
-    * fixed parsing and writing of fpureg
-
-  Revision 1.97.2.1  1999/06/14 17:30:41  peter
-    * align fixes from pierre
-
-  Revision 1.98  1999/06/11 22:54:10  pierre
-    * .align problem treated :
-      .align is considered as .p2align on go32v1 and go32v2
-      and as .balign on other targets
-    + ra386att supports also .balign and .p2align
-    * ag386att uses .balign allways
-
-  Revision 1.97  1999/06/09 23:00:06  peter
-    * small ansistring fixes
-    * val_ansistr_sint destsize changed to longint
-    * don't write low/hi ascii with -al
-
-  Revision 1.96  1999/06/06 15:53:13  peter
-    * suffix adding can be turned of for some tasmops in att_nosuffix array
-
-  Revision 1.95  1999/05/27 19:43:56  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.94  1999/05/23 18:41:54  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.93  1999/05/21 13:54:39  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.92  1999/05/16 17:03:05  peter
-    * better file position info
-
-  Revision 1.91  1999/05/12 00:19:36  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.90  1999/05/08 19:52:31  peter
-    + MessagePos() which is enhanced Message() function but also gets the
-      position info
-    * Removed comp warnings
-
-  Revision 1.89  1999/05/07 00:38:22  pierre
-   * comp fixes 2
-
-  Revision 1.88  1999/05/07 00:09:35  pierre
-   * better comp output
-
-  Revision 1.87  1999/05/06 09:05:06  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.86  1999/05/04 21:44:29  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.85  1999/05/02 23:29:57  peter
-    * readded condition, becuase it's needed for set<cond> and cmov<cond> !
-
-  Revision 1.84  1999/05/02 22:41:47  peter
-    * moved section names to systems
-    * fixed nasm,intel writer
-
-  Revision 1.83  1999/05/02 21:33:51  florian
-    * several bugs regarding -Or fixed
-
-  Revision 1.82  1999/05/01 13:47:51  peter
-    * fix hack for fsub
-
-  Revision 1.81  1999/05/01 13:23:56  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.80  1999/04/17 22:17:04  pierre
-    * ifdef USE_OP3 released (changed into ifndef NO_OP3)
-    * SHRD and SHLD first operand (ATT syntax) can only be CL reg or immediate const
-
-  Revision 1.79  1999/04/16 11:49:37  peter
-    + tempalloc
-    + -at to show temp alloc info in .s file
-
-  Revision 1.78  1999/04/16 10:00:54  pierre
-    + ifdef USE_OP3 code :
-      added all missing op_... constructors for taicpu needed
-      for SHRD,SHLD and IMUL code in assembler readers
-      (check in tests/tbs0123.pp)
-
-  Revision 1.77  1999/04/14 12:44:46  daniel
-  * Proper fix for the .bss conflict
-
-  Revision 1.76  1999/04/14 11:43:25  michael
-  + reverted back to .section .bss
-
-  Revision 1.75  1999/04/13 08:45:33  daniel
-  * EMX assembler prefers .bss instead of .section .bss
-
-  Revision 1.74  1999/04/10 16:14:59  peter
-    * fixed browcol
-    + -ar to show regalloc info in .s file
-
-  Revision 1.73  1999/04/09 08:33:45  peter
-    * write * before register with call for the stricter as versions
-
-  Revision 1.72  1999/03/31 13:55:02  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.71  1999/03/29 16:05:42  peter
-    * optimizer working for ag386bin
-
-  Revision 1.70  1999/03/10 21:48:21  florian
-    * bug0218 fixed, ag386att writes now all real types as byte
-      sequences to minimize rouding error, in -al mode the
-      value is written as comment
-
-  Revision 1.69  1999/03/10 13:25:43  pierre
-    section order changed to get closer output from coff writer
-
-  Revision 1.68  1999/03/02 02:56:09  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.67  1999/03/01 15:46:15  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
-
-  Revision 1.66  1999/02/26 00:48:12  peter
-    * assembler writers fixed for ag386bin
-
-  Revision 1.65  1999/02/25 21:02:17  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.64  1999/02/22 02:14:57  peter
-    * updates for ag386bin
-
-  Revision 1.63  1999/02/17 10:16:25  peter
-    * small fixes for the binary writer
-
-  Revision 1.62  1999/01/12 14:21:26  peter
-    * fixed pushw warning
-
-  Revision 1.61  1998/12/29 18:50:04  jonas
-    * don't write debug info if not (cs_debuginfo in aktmoduleswitches)
-
-  Revision 1.60  1998/12/23 22:53:43  peter
-    * don't count ait_marker for lineinfo
-
-  Revision 1.58  1998/12/11 00:02:38  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.57  1998/12/01 23:36:32  pierre
-   * zero padded alignment was buggy
-
-  Revision 1.56  1998/12/01 11:19:37  peter
-    * fixed range problem with in [tasmop]
-
-  Revision 1.55  1998/11/30 09:42:53  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.54  1998/11/17 10:04:13  pierre
-   * zero indexed file not searched
-
-  Revision 1.53  1998/11/17 00:26:08  peter
-    * fixed for $H+
-
-  Revision 1.52  1998/11/12 11:19:32  pierre
-   * fix for first line of function break
-
-  Revision 1.51  1998/11/09 09:21:18  pierre
-   * fix for stabs line infos
-
-  Revision 1.50  1998/11/06 09:49:25  pierre
-   * n_line stuff cleaned
-
-  Revision 1.49  1998/10/26 23:07:02  peter
-    * fixpath fix
-
-  Revision 1.48  1998/10/15 15:08:39  pierre
-    * removed lots of unnecessary inputfile system.open calls
-      (made a big speed decrease on go32v2 !)
-
-  Revision 1.47  1998/10/13 14:01:05  peter
-    * fixed -al
-
-  Revision 1.46  1998/10/13 13:10:07  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.45  1998/10/12 12:20:39  pierre
-    + added tai_const_symbol_offset
-      for r : pointer = @var.field;
-    * better message for different arg names on implementation
-      of function
-
-  Revision 1.44  1998/10/06 17:16:32  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.43  1998/10/01 20:19:12  jonas
-    + ait_marker support
-
-  Revision 1.42  1998/09/28 16:57:08  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.41  1998/09/20 17:11:19  jonas
-    * released REGALLOC
-
-  Revision 1.40  1998/09/16 17:58:34  jonas
-    * fixed -dRegAlloc and -dDRegalloc problems
-
-  Revision 1.39  1998/09/11 11:30:41  pierre
-  -al -g option bug corrected
-
-  Revision 1.38.2.1  1998/09/11 10:49:09  pierre
-    * bug with -g -al option removed
-
-  Revision 1.38  1998/09/07 22:23:35  peter
-    * fixed for no gdb compiler
-
-  Revision 1.37  1998/09/07 18:33:34  peter
-    + smartlinking for win95 imports
-
-  Revision 1.36  1998/09/04 17:34:19  pierre
-    * bug with datalabel corrected
-    + assembler errors better commented
-    * one nested record crash removed
-
-  Revision 1.35  1998/09/03 17:08:38  pierre
-    * better lines for stabs
-      (no scroll back to if before else part
-      no return to case line at jump outside case)
-    + source lines also if not in order
-
-  Revision 1.34  1998/09/03 11:22:41  peter
-    + support for cs_asm_source
-
-  Revision 1.33  1998/08/26 10:06:33  peter
-    * reduce amount of asmfiles generated
-    * no stabs are written in writefilelineinfo when debuginfo is off
-
-  Revision 1.32  1998/08/20 09:26:35  pierre
-    + funcret setting in underproc testing
-      compile with _dTEST_FUNCRET
-
-  Revision 1.31  1998/08/11 14:01:16  peter
-    * @object type also for extended and comp
-
-  Revision 1.30  1998/08/10 23:56:02  peter
-    * fixed extended writing
-
-  Revision 1.29  1998/08/10 14:49:35  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.27  1998/08/08 12:30:07  florian
-    * extended writing improved
-
-  Revision 1.26  1998/08/08 10:19:16  florian
-    * small fixes to write the extended type correct
-
-  Revision 1.28  1998/08/10 10:01:33  peter
-    * Fixed with GDB undefined
-
-  Revision 1.25  1998/08/06 16:53:25  pierre
-    * debugging info corrected
-
-  Revision 1.24  1998/07/14 14:46:37  peter
-    * released NEWINPUT
-
-  Revision 1.23  1998/07/07 11:19:51  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.22  1998/06/08 22:59:42  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.21  1998/06/05 17:46:01  peter
-    * tp doesn't like comp() typecast
-
-  Revision 1.20  1998/06/04 23:51:27  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.19  1998/05/31 14:13:29  peter
-    * fixed call bugs with assembler readers
-    + OPR_SYMBOL to hold a symbol in the asm parser
-    * fixed staticsymtable vars which were acessed through %ebp instead of
-      name
-
-  Revision 1.18  1998/05/28 17:24:25  peter
-    - $R- for tp to solve range errors with in[]
-
-  Revision 1.17  1998/05/25 17:11:34  pierre
-    * firstpasscount bug fixed
-      now all is already set correctly the first time
-      under EXTDEBUG try -gp to skip all other firstpasses
-      it works !!
-    * small bug fixes
-      - for smallsets with -dTESTSMALLSET
-      - some warnings removed (by correcting code !)
-
-  Revision 1.16  1998/05/23 01:20:54  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.15  1998/05/11 13:07:53  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.14  1998/05/06 18:36:53  peter
-    * tai_section extended with code,data,bss sections and enumerated type
-    * ident 'compiled by FPC' moved to pmodules
-    * small fix for smartlink
-
-  Revision 1.13  1998/05/06 08:38:32  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.12  1998/05/04 17:54:24  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.11  1998/05/01 07:43:52  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.10  1998/04/30 15:59:39  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.9  1998/04/29 10:33:41  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.8  1998/04/28 08:23:58  pierre
-    * bug in stabn generation fixed
-
-  Revision 1.7  1998/04/27 23:10:27  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.6  1998/04/21 11:30:13  peter
-    * fixed $ifdef regalloc
-
-  Revision 1.5  1998/04/16 16:53:24  jonas
-    * changed $ifdef regalloc to $ifdef dregalloc (= debugging info)
-
-  Revision 1.4  1998/04/09 15:46:38  florian
-    + register allocation tracing stuff added
-
-  Revision 1.3  1998/04/08 16:58:00  pierre
-    * several bugfixes
-      ADD ADC and AND are also sign extended
-      nasm output OK (program still crashes at end
-      and creates wrong assembler files !!)
-      procsym types sym in tdef removed !!
-
 }
 }

+ 4 - 76
compiler/ag386bin.pas

@@ -907,7 +907,10 @@ unit ag386bin;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.26  1999-11-02 15:06:56  peter
+  Revision 1.27  1999-11-06 14:34:16  peter
+    * truncated log to 20 revs
+
+  Revision 1.26  1999/11/02 15:06:56  peter
     * import library fixes for win32
     * import library fixes for win32
     * alignment works again
     * alignment works again
 
 
@@ -975,79 +978,4 @@ end.
   Revision 1.8  1999/05/09 11:38:04  peter
   Revision 1.8  1999/05/09 11:38:04  peter
     * don't write .o and link if errors occure during assembling
     * don't write .o and link if errors occure during assembling
 
 
-  Revision 1.6  1999/05/07 00:36:58  pierre
-    * added alignment code for .bss
-    * stabs correct but externalbss disabled
-      would need a special treatment in writestabs
-
-  Revision 1.5  1999/05/06 09:05:07  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.4  1999/05/05 22:21:47  peter
-    * updated messages
-
-  Revision 1.3  1999/05/05 17:34:29  peter
-    * output is more like as 2.9.1
-    * stabs really working for go32v2
-
-  Revision 1.2  1999/05/04 21:44:30  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.1  1999/05/01 13:23:57  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.14  1999/04/16 11:49:48  peter
-    + tempalloc
-    + -at to show temp alloc info in .s file
-
-  Revision 1.13  1999/03/12 00:20:03  pierre
-   + win32 output working !
-
-  Revision 1.12  1999/03/11 17:52:34  peter
-    * fixed wrong ot_signed generation in insns tab
-
-  Revision 1.11  1999/03/10 13:41:07  pierre
-   + partial implementation for win32 !
-     winhello works but pp still does not !
-
-  Revision 1.10  1999/03/08 14:51:05  peter
-    + smartlinking for ag386bin
-
-  Revision 1.9  1999/03/06 17:24:18  peter
-    * rewritten intel parser a lot, especially reference reading
-    * size checking added for asm parsers
-
-  Revision 1.8  1999/03/05 13:09:50  peter
-    * first things for tai_cut support for ag386bin
-
-  Revision 1.7  1999/03/03 11:41:53  pierre
-    + stabs info corrected to give results near to GAS output
-    * local labels (with .L are not stored in object anymore)
-      so we get the same number of symbols as from GAS !
-
-  Revision 1.6  1999/03/03 01:36:44  pierre
-    + stabs output working (though not really tested)
-      for a simple file the only difference to GAS output is due
-      to the VMA of the different sections
-
-  Revision 1.5  1999/03/02 02:56:18  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.4  1999/03/01 15:46:20  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
-
-  Revision 1.3  1999/02/25 21:03:01  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.2  1999/02/22 02:16:00  peter
-    * updates for ag386bin
-
-  Revision 1.1  1999/02/16 17:59:37  peter
-    + initial files
-
 }
 }

+ 4 - 147
compiler/ag386int.pas

@@ -629,7 +629,10 @@ ait_stab_function_name : ;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.55  1999-11-02 15:06:56  peter
+  Revision 1.56  1999-11-06 14:34:16  peter
+    * truncated log to 20 revs
+
+  Revision 1.55  1999/11/02 15:06:56  peter
     * import library fixes for win32
     * import library fixes for win32
     * alignment works again
     * alignment works again
 
 
@@ -712,150 +715,4 @@ end.
   Revision 1.36  1999/05/04 21:44:31  florian
   Revision 1.36  1999/05/04 21:44:31  florian
     * changes to compile it with Delphi 4.0
     * changes to compile it with Delphi 4.0
 
 
-  Revision 1.35  1999/05/02 22:41:49  peter
-    * moved section names to systems
-    * fixed nasm,intel writer
-
-  Revision 1.34  1999/05/01 13:23:58  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.33  1999/04/17 22:17:05  pierre
-    * ifdef USE_OP3 released (changed into ifndef NO_OP3)
-    * SHRD and SHLD first operand (ATT syntax) can only be CL reg or immediate const
-
-  Revision 1.32  1999/04/16 11:49:39  peter
-    + tempalloc
-    + -at to show temp alloc info in .s file
-
-  Revision 1.31  1999/04/16 10:00:55  pierre
-    + ifdef USE_OP3 code :
-      added all missing op_... constructors for taicpu needed
-      for SHRD,SHLD and IMUL code in assembler readers
-      (check in tests/tbs0123.pp)
-
-  Revision 1.30  1999/03/29 16:05:43  peter
-    * optimizer working for ag386bin
-
-  Revision 1.29  1999/03/02 02:56:10  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.28  1999/03/01 15:46:16  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
-
-  Revision 1.27  1999/02/26 00:48:13  peter
-    * assembler writers fixed for ag386bin
-
-  Revision 1.26  1999/02/25 21:02:18  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.25  1999/02/22 02:14:59  peter
-    * updates for ag386bin
-
-  Revision 1.24  1998/12/20 16:21:22  peter
-    * smartlinking doesn't crash anymore
-
-  Revision 1.23  1998/12/16 00:27:17  peter
-    * removed some obsolete version checks
-
-  Revision 1.22  1998/12/01 11:19:38  peter
-    * fixed range problem with in [tasmop]
-
-  Revision 1.21  1998/11/30 09:42:55  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.20  1998/11/17 00:26:09  peter
-    * fixed for $H+
-
-  Revision 1.19  1998/11/16 12:38:05  jonas
-    + readded ait_marker support
-
-  Revision 1.18  1998/11/12 11:19:33  pierre
-   * fix for first line of function break
-
-  Revision 1.17  1998/10/12 12:20:40  pierre
-    + added tai_const_symbol_offset
-      for r : pointer = @var.field;
-    * better message for different arg names on implementation
-      of function
-
-  Revision 1.16  1998/10/06 17:16:33  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.15  1998/10/01 20:19:06  jonas
-    + ait_marker support
-
-  Revision 1.14  1998/09/20 17:11:21  jonas
-    * released REGALLOC
-
-  Revision 1.13  1998/08/10 15:49:38  peter
-    * small fixes for 0.99.5
-
-  Revision 1.12  1998/08/08 10:19:17  florian
-    * small fixes to write the extended type correct
-
-  Revision 1.11  1998/06/05 17:46:02  peter
-    * tp doesn't like comp() typecast
-
-  Revision 1.10  1998/05/25 17:11:36  pierre
-    * firstpasscount bug fixed
-      now all is already set correctly the first time
-      under EXTDEBUG try -gp to skip all other firstpasses
-      it works !!
-    * small bug fixes
-      - for smallsets with -dTESTSMALLSET
-      - some warnings removed (by correcting code !)
-
-  Revision 1.9  1998/05/23 01:20:55  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.8  1998/05/06 18:36:53  peter
-    * tai_section extended with code,data,bss sections and enumerated type
-    * ident 'compiled by FPC' moved to pmodules
-    * small fix for smartlink
-
-  Revision 1.7  1998/05/06 08:38:32  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.6  1998/05/04 17:54:24  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.5  1998/05/01 07:43:52  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.4  1998/04/29 10:33:41  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.3  1998/04/08 16:58:01  pierre
-    * several bugfixes
-      ADD ADC and AND are also sign extended
-      nasm output OK (program still crashes at end
-      and creates wrong assembler files !!)
-      procsym types sym in tdef removed !!
-
-  Revision 1.2  1998/04/08 11:34:17  peter
-    * nasm works (linux only tested)
 }
 }

+ 4 - 128
compiler/ag386nsm.pas

@@ -654,7 +654,10 @@ unit ag386nsm;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.53  1999-11-02 15:06:56  peter
+  Revision 1.54  1999-11-06 14:34:16  peter
+    * truncated log to 20 revs
+
+  Revision 1.53  1999/11/02 15:06:56  peter
     * import library fixes for win32
     * import library fixes for win32
     * alignment works again
     * alignment works again
 
 
@@ -737,131 +740,4 @@ end.
       position info
       position info
     * Removed comp warnings
     * Removed comp warnings
 
 
-  Revision 1.33  1999/05/07 00:08:48  pierre
-   * AG386BIN cond -> OLDASM, only cosmetic
-
-  Revision 1.32  1999/05/06 09:05:11  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.31  1999/05/04 21:44:32  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.30  1999/05/02 22:41:50  peter
-    * moved section names to systems
-    * fixed nasm,intel writer
-
-  Revision 1.29  1999/05/01 13:23:59  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.28  1999/04/17 22:17:06  pierre
-    * ifdef USE_OP3 released (changed into ifndef NO_OP3)
-    * SHRD and SHLD first operand (ATT syntax) can only be CL reg or immediate const
-
-  Revision 1.27  1999/04/16 11:49:40  peter
-    + tempalloc
-    + -at to show temp alloc info in .s file
-
-  Revision 1.26  1999/04/16 10:00:56  pierre
-    + ifdef USE_OP3 code :
-      added all missing op_... constructors for taicpu needed
-      for SHRD,SHLD and IMUL code in assembler readers
-      (check in tests/tbs0123.pp)
-
-  Revision 1.25  1999/03/29 16:05:44  peter
-    * optimizer working for ag386bin
-
-  Revision 1.24  1999/03/10 13:25:44  pierre
-    section order changed to get closer output from coff writer
-
-  Revision 1.23  1999/03/04 13:55:39  pierre
-    * some m68k fixes (still not compilable !)
-    * new(tobj) does not give warning if tobj has no VMT !
-
-  Revision 1.22  1999/03/02 02:56:11  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.21  1999/03/01 15:46:17  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
-
-  Revision 1.20  1999/02/26 00:48:14  peter
-    * assembler writers fixed for ag386bin
-
-  Revision 1.19  1999/02/25 21:02:19  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.18  1999/02/22 02:15:00  peter
-    * updates for ag386bin
-
-  Revision 1.17  1998/12/20 16:21:23  peter
-    * smartlinking doesn't crash anymore
-
-  Revision 1.16  1998/12/16 00:27:18  peter
-    * removed some obsolete version checks
-
-  Revision 1.15  1998/12/01 11:19:39  peter
-    * fixed range problem with in [tasmop]
-
-  Revision 1.14  1998/11/30 09:42:56  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.13  1998/11/17 00:26:10  peter
-    * fixed for $H+
-
-  Revision 1.12  1998/11/12 11:19:34  pierre
-   * fix for first line of function break
-
-  Revision 1.11  1998/10/12 12:20:42  pierre
-    + added tai_const_symbol_offset
-      for r : pointer = @var.field;
-    * better message for different arg names on implementation
-      of function
-
-  Revision 1.10  1998/10/06 17:16:34  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.9  1998/10/01 20:19:07  jonas
-    + ait_marker support
-
-  Revision 1.8  1998/09/20 17:11:22  jonas
-    * released REGALLOC
-
-  Revision 1.7  1998/08/11 14:01:43  peter
-    * fixed fwait bug using direct opcode
-
-  Revision 1.6  1998/08/10 15:49:39  peter
-    * small fixes for 0.99.5
-
-  Revision 1.5  1998/08/08 10:19:18  florian
-    * small fixes to write the extended type correct
-
-  Revision 1.4  1998/06/05 17:46:03  peter
-    * tp doesn't like comp() typecast
-
-  Revision 1.3  1998/05/28 17:24:27  peter
-    - $R- for tp to solve range errors with in[]
-
-  Revision 1.2  1998/05/25 17:11:37  pierre
-    * firstpasscount bug fixed
-      now all is already set correctly the first time
-      under EXTDEBUG try -gp to skip all other firstpasses
-      it works !!
-    * small bug fixes
-      - for smallsets with -dTESTSMALLSET
-      - some warnings removed (by correcting code !)
-
-  Revision 1.1  1998/05/23 01:20:56  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
 }
 }

+ 5 - 2
compiler/ag68kmpw.pas

@@ -581,7 +581,10 @@ ait_labeled_instruction :
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.9  1999-09-16 23:05:51  florian
+  Revision 1.10  1999-11-06 14:34:16  peter
+    * truncated log to 20 revs
+
+  Revision 1.9  1999/09/16 23:05:51  florian
     * m68k compiler is again compilable (only gas writer, no assembler reader)
     * m68k compiler is again compilable (only gas writer, no assembler reader)
 
 
   Revision 1.8  1998/12/11 00:02:42  peter
   Revision 1.8  1998/12/11 00:02:42  peter
@@ -644,4 +647,4 @@ end.
   Revision 1.1  1998/03/10 01:26:10  peter
   Revision 1.1  1998/03/10 01:26:10  peter
     + new uniform names
     + new uniform names
 
 
-}
+}

+ 4 - 155
compiler/assemble.pas

@@ -559,7 +559,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.55  1999-11-02 15:06:57  peter
+  Revision 1.56  1999-11-06 14:34:17  peter
+    * truncated log to 20 revs
+
+  Revision 1.55  1999/11/02 15:06:57  peter
     * import library fixes for win32
     * import library fixes for win32
     * alignment works again
     * alignment works again
 
 
@@ -632,158 +635,4 @@ end.
   Revision 1.37  1999/02/24 00:59:11  peter
   Revision 1.37  1999/02/24 00:59:11  peter
     * small updates for ag386bin
     * small updates for ag386bin
 
 
-  Revision 1.36  1999/02/22 02:15:01  peter
-    * updates for ag386bin
-
-  Revision 1.35  1999/02/17 10:16:26  peter
-    * small fixes for the binary writer
-
-  Revision 1.34  1999/01/10 15:37:52  peter
-    * moved some tables from ra386*.pas -> i386.pas
-    + start of coff writer
-    * renamed asmutils unit to rautils
-
-  Revision 1.33  1998/12/11 00:02:45  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.32  1998/11/06 09:46:46  pierre
-   * assemble failure increments status errorcount again !!
-
-  Revision 1.31  1998/10/26 22:23:28  peter
-    + fixpath() has an extra option to allow a ./ as path
-
-  Revision 1.30  1998/10/16 13:37:14  florian
-    + switch -FD added to specify the path for utilities
-
-  Revision 1.29  1998/10/15 16:19:42  peter
-    * fixed asmsynchronize
-
-  Revision 1.28  1998/10/14 15:56:43  pierre
-    * all references to comp suppressed for m68k
-
-  Revision 1.27  1998/10/13 16:50:01  pierre
-    * undid some changes of Peter that made the compiler wrong
-      for m68k (I had to reinsert some ifdefs)
-    * removed several memory leaks under m68k
-    * removed the meory leaks for assembler readers
-    * cross compiling shoud work again better
-      ( crosscompiling sysamiga works
-       but as68k still complain about some code !)
-
-  Revision 1.26  1998/10/13 13:10:11  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.25  1998/10/13 08:19:24  pierre
-    + source_os is now set correctly for cross-processor compilers
-      (tos contains all target_infos and
-       we use CPU86 and CPU68 conditionals to
-       get the source operating system
-       this only works if you do not undefine
-       the source target  !!)
-    * several cg68k memory leaks fixed
-    + started to change the code so that it should be possible to have
-      a complete compiler (both for m68k and i386 !!)
-
-  Revision 1.24  1998/10/08 23:28:50  peter
-    * -vu shows unit info, -vt shows tried/used files
-
-  Revision 1.23  1998/10/07 04:27:37  carl
-    + MPW support
-
-  Revision 1.22  1998/09/16 16:41:39  peter
-    * merged fixes
-
-  Revision 1.21.2.1  1998/09/16 16:11:38  peter
-    * missing isendfile reset in .init
-
-  Revision 1.21  1998/09/07 18:33:32  peter
-    + smartlinking for win95 imports
-
-  Revision 1.20  1998/09/04 17:34:20  pierre
-    * bug with datalabel corrected
-    + assembler errors better commented
-    * one nested record crash removed
-
-  Revision 1.19  1998/08/26 10:06:34  peter
-    * reduce amount of asmfiles generated
-    * no stabs are written in writefilelineinfo when debuginfo is off
-
-  Revision 1.18  1998/08/21 14:08:39  pierre
-    + TEST_FUNCRET now default (old code removed)
-      works also for m68k (at least compiles)
-
-  Revision 1.17  1998/08/17 09:17:43  peter
-    * static/shared linking updates
-
-  Revision 1.16  1998/08/14 21:56:30  peter
-    * setting the outputfile using -o works now to create static libs
-
-  Revision 1.15  1998/08/14 18:16:09  peter
-    * return after a failed call will now add it to ppas
-
-  Revision 1.14  1998/08/10 14:49:41  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.13  1998/07/14 21:46:40  peter
-    * updated messages file
-
-  Revision 1.12  1998/07/08 14:58:34  daniel
-  * First check if call to assembler is succesfull, then check it's exit code.
-  This is more logical than first checking the exit code. For some mysterious
-  reason this did not give problems on DOS & Linux. On OS/2 it did.
-
-  Revision 1.11  1998/06/08 22:59:43  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.10  1998/06/04 23:51:33  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.9  1998/05/23 01:21:01  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.8  1998/05/11 13:07:53  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.7  1998/05/07 00:17:00  peter
-    * smartlinking for sets
-    + consts labels are now concated/generated in hcodegen
-    * moved some cpu code to cga and some none cpu depended code from cga
-      to tree and hcodegen and cleanup of hcodegen
-    * assembling .. output reduced for smartlinking ;)
-
-  Revision 1.6  1998/05/04 17:54:24  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.5  1998/04/29 10:33:44  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.4  1998/04/27 23:10:27  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.3  1998/04/10 14:41:43  peter
-    * removed some Hints
-    * small speed optimization for AsmLn
-
-  Revision 1.2  1998/04/08 11:34:18  peter
-    * nasm works (linux only tested)
 }
 }

+ 4 - 5
compiler/browcol.pas

@@ -1697,7 +1697,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.25  1999-10-26 12:30:40  peter
+  Revision 1.26  1999-11-06 14:34:17  peter
+    * truncated log to 20 revs
+
+  Revision 1.25  1999/10/26 12:30:40  peter
     * const parameter is now checked
     * const parameter is now checked
     * better and generic check if a node can be used for assigning
     * better and generic check if a node can be used for assigning
     * export fixes
     * export fixes
@@ -1771,8 +1774,4 @@ end.
   Revision 1.2  1999/01/21 11:49:14  peter
   Revision 1.2  1999/01/21 11:49:14  peter
     * updates from gabor
     * updates from gabor
 
 
-  Revision 1.1  1999/01/12 14:25:24  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
 }
 }

+ 4 - 244
compiler/cg386add.pas

@@ -2131,7 +2131,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.81  1999-09-28 19:43:45  florian
+  Revision 1.82  1999-11-06 14:34:17  peter
+    * truncated log to 20 revs
+
+  Revision 1.81  1999/09/28 19:43:45  florian
     * the maybe_push fix of Pierre wasn't 100%, the tree parameter
     * the maybe_push fix of Pierre wasn't 100%, the tree parameter
       must contain a valid location (which is saved if necessary)
       must contain a valid location (which is saved if necessary)
 
 
@@ -2202,247 +2205,4 @@ end.
   Revision 1.63  1999/05/31 20:35:45  peter
   Revision 1.63  1999/05/31 20:35:45  peter
     * ansistring fixes, decr_ansistr called after all temp ansi reuses
     * ansistring fixes, decr_ansistr called after all temp ansi reuses
 
 
-  Revision 1.62  1999/05/27 19:44:04  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.61  1999/05/25 20:36:11  florian
-    * some bugs in the qword code generation fixed
-
-  Revision 1.60  1999/05/23 19:55:10  florian
-    * qword/int64 multiplication fixed
-    + qword/int64 subtraction
-
-  Revision 1.59  1999/05/19 10:31:53  florian
-    * two bugs reported by Romio (bugs 13) are fixed:
-        - empty array constructors are now handled correctly (e.g. for sysutils.format)
-        - comparsion of ansistrings was sometimes coded wrong
-
-  Revision 1.58  1999/05/18 21:58:22  florian
-    * fixed some bugs related to temp. ansistrings and functions results
-      which return records/objects/arrays which need init/final.
-
-  Revision 1.57  1999/05/18 14:15:18  peter
-    * containsself fixes
-    * checktypes()
-
-  Revision 1.56  1999/05/17 21:56:58  florian
-    * new temporary ansistring handling
-
-  Revision 1.55  1999/05/10 14:37:49  pierre
-   problem with EAX being overwritten before used in A_MULL code fixed
-
-  Revision 1.54  1999/05/09 17:58:42  jonas
-    + change "MUL <power of 2>, reg" to SHL (-d ShlMul)
-    * do the NOT of a constant set when it's substracted internally
-      (-dsetconstnot)
-
-  Revision 1.53  1999/05/01 13:24:01  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.52  1999/04/19 09:39:01  pierre
-   * fixes for tempansi
-
-  Revision 1.51  1999/04/16 20:44:34  florian
-    * the boolean operators =;<>;xor with LOC_JUMP and LOC_FLAGS
-      operands fixed, small things for new ansistring management
-
-  Revision 1.50  1999/04/16 13:42:35  jonas
-    * more regalloc fixes (still not complete)
-
-  Revision 1.49  1999/04/16 11:44:24  peter
-    * better support for flags result
-
-  Revision 1.48  1999/04/14 09:14:45  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.47  1999/04/12 19:09:08  florian
-  * comparsions for small enumerations type are now generated
-    correct
-
-  Revision 1.46  1999/03/02 18:21:36  peter
-    + flags support for add and case
-
-  Revision 1.45  1999/02/25 21:02:20  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.44  1999/02/22 02:15:02  peter
-    * updates for ag386bin
-
-  Revision 1.43  1999/02/16 00:46:30  peter
-    * fixed bug 206
-
-  Revision 1.42  1999/02/12 10:43:56  florian
-    * internal error 10 with ansistrings fixed
-
-  Revision 1.41  1999/01/20 19:23:10  jonas
-    * fixed set1 <= set2 for small sets
-
-  Revision 1.40  1999/01/20 17:39:22  jonas
-    + fixed bug0163 (set1 <= set2 support)
-
-  Revision 1.39  1999/01/19 10:18:58  florian
-    * bug with mul. of dwords fixed, reported by Alexander Stohr
-    * some changes to compile with TP
-    + small enhancements for the new code generator
-
-  Revision 1.38  1999/01/05 17:03:36  jonas
-    * don't output inc/dec if cs_check_overflow is on, because inc/dec don't change
-      the carry flag
-
-  Revision 1.37  1998/12/22 13:10:56  florian
-    * memory leaks for ansistring type casts fixed
-
-  Revision 1.36  1998/12/19 00:23:40  florian
-    * ansistring memory leaks fixed
-
-  Revision 1.35  1998/12/11 23:36:06  florian
-    + again more stuff for int64/qword:
-         - comparision operators
-         - code generation for: str, read(ln), write(ln)
-
-  Revision 1.34  1998/12/11 00:02:46  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.33  1998/12/10 11:16:00  florian
-    + some basic operations with qwords and int64 added: +, xor, and, or;
-      the register allocation works fine
-
-  Revision 1.32  1998/12/10 09:47:13  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.31  1998/11/30 09:42:59  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.30  1998/11/24 12:52:40  peter
-    * sets are not written twice anymore
-    * optimize for emptyset+single element which uses a new routine from
-      set.inc FPC_SET_CREATE_ELEMENT
-
-  Revision 1.29  1998/11/18 15:44:05  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.28  1998/11/18 09:18:01  pierre
-    + automatic loading of profile unit with -pg option
-      in go32v2 mode (also defines FPC_PROFILE)
-    * some memory leaks removed
-    * unreleased temp problem with sets solved
-
-  Revision 1.27  1998/11/17 00:36:38  peter
-    * more ansistring fixes
-
-  Revision 1.26  1998/11/16 16:17:16  peter
-    * fixed ansistring temp which forgot a reset
-
-  Revision 1.25  1998/11/16 15:35:35  peter
-    * rename laod/copystring -> load/copyshortstring
-    * fixed int-bool cnv bug
-    + char-ansistring conversion
-
-  Revision 1.24  1998/11/07 12:49:30  peter
-    * fixed ansicompare which returns signed
-
-  Revision 1.23  1998/10/29 15:42:43  florian
-    + partial disposing of temp. ansistrings
-
-  Revision 1.22  1998/10/28 18:26:12  pierre
-   * removed some erros after other errors (introduced by useexcept)
-   * stabs works again correctly (for how long !)
-
-  Revision 1.21  1998/10/25 23:32:48  peter
-    * fixed unsigned mul
-
-  Revision 1.20  1998/10/21 08:39:56  florian
-    + ansistring operator +
-    + $h and string[n] for n>255 added
-    * small problem with TP fixed
-
-  Revision 1.19  1998/10/20 15:09:21  florian
-    + binary operators for ansi strings
-
-  Revision 1.18  1998/10/20 08:06:38  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.17  1998/10/09 11:47:45  pierre
-    * still more memory leaks fixes !!
-
-  Revision 1.16  1998/10/09 08:56:21  pierre
-    * several memory leaks fixed
-
-  Revision 1.15  1998/10/08 17:17:10  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.14  1998/09/28 16:57:13  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.13  1998/09/17 09:42:09  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.12  1998/09/14 10:43:44  peter
-    * all internal RTL functions start with FPC_
-
-  Revision 1.11  1998/09/07 18:45:52  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.10  1998/09/04 10:05:04  florian
-    * ugly fix for STRCAT, nevertheless it needs more fixing !!!!!!!
-      we need an new version of STRCAT which takes a length parameter
-
-  Revision 1.9  1998/09/04 08:41:36  peter
-    * updated some error CGMessages
-
-  Revision 1.8  1998/08/28 10:54:18  peter
-    * fixed smallset generation from elements, it has never worked before!
-
-  Revision 1.7  1998/08/19 14:56:59  peter
-    * forgot to removed some unused code in addset for set<>set
-
-  Revision 1.6  1998/08/18 09:24:35  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.5  1998/08/14 18:18:37  peter
-    + dynamic set contruction
-    * smallsets are now working (always longint size)
-
-  Revision 1.4  1998/08/10 14:49:42  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.3  1998/06/25 08:48:04  florian
-    * first version of rtti support
-
-  Revision 1.2  1998/06/08 13:13:28  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.1  1998/06/05 17:44:10  peter
-    * splitted cgi386
-
 }
 }

+ 4 - 385
compiler/cg386cal.pas

@@ -1225,7 +1225,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.109  1999-11-04 00:23:58  pierre
+  Revision 1.110  1999-11-06 14:34:17  peter
+    * truncated log to 20 revs
+
+  Revision 1.109  1999/11/04 00:23:58  pierre
    * fix for fpuvaroffset for unused return value
    * fix for fpuvaroffset for unused return value
 
 
   Revision 1.108  1999/10/26 12:30:40  peter
   Revision 1.108  1999/10/26 12:30:40  peter
@@ -1303,388 +1306,4 @@ end.
   Revision 1.90.2.3  1999/06/22 13:30:08  peter
   Revision 1.90.2.3  1999/06/22 13:30:08  peter
     * fixed return with packenum
     * fixed return with packenum
 
 
-  Revision 1.90.2.2  1999/06/16 09:30:44  peter
-    * fixed loading of ansistring when eax was already used
-
-  Revision 1.90.2.1  1999/06/14 17:24:42  peter
-    * fixed saving of registers with decr_ansistr
-
-  Revision 1.90  1999/06/02 10:11:40  florian
-    * make cycle fixed i.e. compilation with 0.99.10
-    * some fixes for qword
-    * start of register calling conventions
-
-  Revision 1.89  1999/05/28 15:59:46  pierre
-   * forgotten emitcall change in conditional
-
-  Revision 1.88  1999/05/28 11:00:49  peter
-    * removed ungettempoftype
-
-  Revision 1.87  1999/05/27 19:44:07  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.86  1999/05/23 18:41:58  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.85  1999/05/21 13:54:44  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.84  1999/05/18 22:34:26  pierre
-   * extedebug problem solved
-
-  Revision 1.83  1999/05/18 21:58:24  florian
-    * fixed some bugs related to temp. ansistrings and functions results
-      which return records/objects/arrays which need init/final.
-
-  Revision 1.82  1999/05/18 14:15:23  peter
-    * containsself fixes
-    * checktypes()
-
-  Revision 1.81  1999/05/18 09:52:17  peter
-    * procedure of object and addrn fixes
-
-  Revision 1.80  1999/05/17 23:51:37  peter
-    * with temp vars now use a reference with a persistant temp instead
-      of setting datasize
-
-  Revision 1.79  1999/05/17 21:56:59  florian
-    * new temporary ansistring handling
-
-  Revision 1.78  1999/05/01 13:24:02  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.77  1999/04/29 22:12:21  pierre
-   * fix for ID 388 removing real from stack was wrong
-
-  Revision 1.76  1999/04/25 22:33:19  pierre
-   * fix for TESTOBJEXT code
-
-  Revision 1.75  1999/04/19 09:45:46  pierre
-    +  cdecl or stdcall push all args with longint size
-    *  tempansi stuff cleaned up
-
-  Revision 1.74  1999/04/16 13:42:23  jonas
-    * more regalloc fixes (still not complete)
-
-  Revision 1.73  1999/04/16 10:26:56  pierre
-   * no add $0,%esp for cdecl functions without parameters
-
-  Revision 1.72  1999/04/09 08:41:48  peter
-    * define to get ansistring returns in ref instead of reg
-
-  Revision 1.71  1999/03/31 13:55:04  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.70  1999/03/24 23:16:46  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.69  1999/02/25 21:02:21  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.68  1999/02/22 02:15:04  peter
-    * updates for ag386bin
-
-  Revision 1.67  1999/02/11 09:46:21  pierre
-    * fix for normal method calls inside static methods :
-      WARNING there were both parser and codegen errors !!
-      added static_call boolean to calln tree
-
-  Revision 1.66  1999/02/09 15:45:46  florian
-    + complex results for assembler functions, fixes bug0155
-
-  Revision 1.65  1999/02/08 11:29:04  pierre
-   * fix for bug0214
-     several problems where combined
-     search_class_member did not set srsymtable
-     => in do_member_read the call node got a wrong symtable
-     in cg386cal the vmt was pushed twice without chacking if it exists
-     now %esi is set to zero and pushed if not vmt
-     (not very efficient but should work !)
-
-  Revision 1.64  1999/02/04 10:49:39  florian
-    + range checking for ansi- and widestrings
-    * made it compilable with TP
-
-  Revision 1.63  1999/02/03 10:18:14  pierre
-   * conditional code for extended check of virtual methods
-
-  Revision 1.62  1999/02/02 23:52:32  florian
-    * problem with calls to method pointers in methods fixed
-    - double ansistrings temp management removed
-
-  Revision 1.61  1999/02/02 11:04:36  florian
-    * class destructors fixed, class instances weren't disposed correctly
-
-  Revision 1.60  1999/01/28 23:56:44  florian
-    * the reference in the result location of a function call wasn't resetted =>
-      problem with unallowed far pointer, is solved now
-
-  Revision 1.59  1999/01/27 00:13:52  florian
-    * "procedure of object"-stuff fixed
-
-  Revision 1.58  1999/01/21 22:10:35  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.57  1999/01/21 16:40:51  pierre
-   * fix for constructor inside with statements
-
-  Revision 1.56  1998/12/30 13:41:05  peter
-    * released valuepara
-
-  Revision 1.55  1998/12/22 13:10:58  florian
-    * memory leaks for ansistring type casts fixed
-
-  Revision 1.54  1998/12/19 00:23:41  florian
-    * ansistring memory leaks fixed
-
-  Revision 1.53  1998/12/11 00:02:47  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.52  1998/12/10 14:39:29  florian
-    * bug with p(const a : ansistring) fixed
-    * duplicate constant ansistrings were handled wrong, fixed
-
-  Revision 1.51  1998/12/10 09:47:15  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.50  1998/12/06 13:12:44  florian
-    * better code generation for classes which are passed as parameters to
-      subroutines
-
-  Revision 1.49  1998/11/30 09:43:00  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.48  1998/11/27 14:50:30  peter
-    + open strings, $P switch support
-
-  Revision 1.47  1998/11/26 21:30:03  peter
-    * fix for valuepara
-
-  Revision 1.46  1998/11/26 14:39:10  peter
-    * ansistring -> pchar fixed
-    * ansistring constants fixed
-    * ansistring constants are now written once
-
-  Revision 1.45  1998/11/18 15:44:07  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.44  1998/11/16 15:35:36  peter
-    * rename laod/copystring -> load/copyshortstring
-    * fixed int-bool cnv bug
-    + char-ansistring conversion
-
-  Revision 1.43  1998/11/15 16:32:33  florian
-    * some stuff of Pavel implement (win32 dll creation)
-    * bug with ansistring function results fixed
-
-  Revision 1.42  1998/11/13 15:40:13  pierre
-    + added -Se in Makefile cvstest target
-    + lexlevel cleanup
-      normal_function_level main_program_level and unit_init_level defined
-    * tins_cache grown to A_EMMS (gave range check error in asm readers)
-      (test added in code !)
-    * -Un option was wrong
-    * _FAIL and _SELF only keyword inside
-      constructors and methods respectively
-
-  Revision 1.41  1998/11/12 11:19:40  pierre
-   * fix for first line of function break
-
-  Revision 1.40  1998/11/10 10:09:08  peter
-    * va_list -> array of const
-
-  Revision 1.39  1998/11/09 11:44:33  peter
-    + va_list for printf support
-
-  Revision 1.38  1998/10/21 15:12:49  pierre
-    * bug fix for IOCHECK inside a procedure with iocheck modifier
-    * removed the GPF for unexistant overloading
-      (firstcall was called with procedinition=nil !)
-    * changed typen to what Florian proposed
-      gentypenode(p : pdef) sets the typenodetype field
-      and resulttype is only set if inside bt_type block !
-
-  Revision 1.37  1998/10/21 08:39:57  florian
-    + ansistring operator +
-    + $h and string[n] for n>255 added
-    * small problem with TP fixed
-
-  Revision 1.36  1998/10/20 08:06:39  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.35  1998/10/16 08:51:45  peter
-    + target_os.stackalignment
-    + stack can be aligned at 2 or 4 byte boundaries
-
-  Revision 1.34  1998/10/09 08:56:22  pierre
-    * several memory leaks fixed
-
-  Revision 1.33  1998/10/06 17:16:39  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.32  1998/10/01 09:22:52  peter
-    * fixed value openarray
-    * ungettemp of arrayconstruct
-
-  Revision 1.31  1998/09/28 16:57:15  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.30  1998/09/26 15:03:02  florian
-    * small problems with DOM and excpetions fixed (code generation
-      of raise was wrong and self was sometimes destroyed :()
-
-  Revision 1.29  1998/09/25 00:04:00  florian
-    * problems when calling class methods fixed
-
-  Revision 1.28  1998/09/24 14:27:37  peter
-    * some better support for openarray
-
-  Revision 1.27  1998/09/24 09:02:13  peter
-    * rewritten isconvertable to use case
-    * array of .. and single variable are compatible
-
-  Revision 1.26  1998/09/21 08:45:06  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.25  1998/09/20 12:26:35  peter
-    * merged fixes
-
-  Revision 1.24  1998/09/17 09:42:10  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.23  1998/09/14 10:43:45  peter
-    * all internal RTL functions start with FPC_
-
-  Revision 1.22.2.1  1998/09/20 12:20:06  peter
-    * Fixed stack not on 4 byte boundary when doing a call
-
-  Revision 1.22  1998/09/04 08:41:37  peter
-    * updated some error CGMessages
-
-  Revision 1.21  1998/09/01 12:47:57  peter
-    * use pdef^.size instead of orddef^.typ
-
-  Revision 1.20  1998/08/31 12:22:15  peter
-    * secondinline moved to cg386inl
-
-  Revision 1.19  1998/08/31 08:52:03  peter
-    * fixed error 10 with succ() and pref()
-
-  Revision 1.18  1998/08/20 21:36:38  peter
-    * fixed 'with object do' bug
-
-  Revision 1.17  1998/08/19 16:07:36  jonas
-    * changed optimizer switches + cleanup of DestroyRefs in daopt386.pas
-
-  Revision 1.16  1998/08/18 09:24:36  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.15  1998/08/13 11:00:09  peter
-    * fixed procedure<>procedure construct
-
-  Revision 1.14  1998/08/11 14:05:33  peter
-    * fixed sizeof(array of char)
-
-  Revision 1.13  1998/08/10 14:49:45  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.12  1998/07/30 13:30:31  florian
-    * final implemenation of exception support, maybe it needs
-      some fixes :)
-
-  Revision 1.11  1998/07/24 22:16:52  florian
-    * internal error 10 together with array access fixed. I hope
-      that's the final fix.
-
-  Revision 1.10  1998/07/18 22:54:23  florian
-    * some ansi/wide/longstring support fixed:
-       o parameter passing
-       o returning as result from functions
-
-  Revision 1.9  1998/07/07 17:40:37  peter
-    * packrecords 4 works
-    * word aligning of parameters
-
-  Revision 1.8  1998/07/06 15:51:15  michael
-  Added length checking for string reading
-
-  Revision 1.7  1998/07/06 14:19:51  michael
-  + Added calls for reading/writing ansistrings
-
-  Revision 1.6  1998/07/01 15:28:48  peter
-    + better writeln/readln handling, now 100% like tp7
-
-  Revision 1.5  1998/06/25 14:04:17  peter
-    + internal inc/dec
-
-  Revision 1.4  1998/06/25 08:48:06  florian
-    * first version of rtti support
-
-  Revision 1.3  1998/06/09 16:01:33  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.2  1998/06/08 13:13:29  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.1  1998/06/05 17:44:10  peter
-    * splitted cgi386
-
 }
 }

+ 4 - 264
compiler/cg386cnv.pas

@@ -1491,7 +1491,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.92  1999-10-25 10:32:43  peter
+  Revision 1.93  1999-11-06 14:34:17  peter
+    * truncated log to 20 revs
+
+  Revision 1.92  1999/10/25 10:32:43  peter
     * ansistring 2 chararray support
     * ansistring 2 chararray support
     * optimized ansitring 2 pchar
     * optimized ansitring 2 pchar
 
 
@@ -1568,267 +1571,4 @@ end.
     * fixed some bugs related to temp. ansistrings and functions results
     * fixed some bugs related to temp. ansistrings and functions results
       which return records/objects/arrays which need init/final.
       which return records/objects/arrays which need init/final.
 
 
-  Revision 1.72  1999/05/17 21:57:00  florian
-    * new temporary ansistring handling
-
-  Revision 1.71  1999/05/12 00:19:40  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.70  1999/05/07 00:33:47  pierre
-   explicit type conv to pobject checked with cond TESTOBJEXT2
-
-  Revision 1.69  1999/05/01 13:24:04  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.68  1999/04/28 06:01:54  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.67  1999/04/22 10:49:07  peter
-    * fixed pchar to string location
-
-  Revision 1.66  1999/04/20 10:35:58  peter
-    * fixed bool2bool
-
-  Revision 1.65  1999/04/19 09:45:47  pierre
-    +  cdecl or stdcall push all args with longint size
-    *  tempansi stuff cleaned up
-
-  Revision 1.64  1999/04/16 13:42:25  jonas
-    * more regalloc fixes (still not complete)
-
-  Revision 1.63  1999/04/15 08:56:25  peter
-    * fixed bool-bool conversion
-
-  Revision 1.62  1999/04/13 18:51:47  florian
-    * esi wasn't reloaded after a call to the esi helper procedure, fixed
-
-  Revision 1.61  1999/03/05 16:14:20  peter
-    * fixed boolean() typecast
-
-  Revision 1.60  1999/03/02 18:24:19  peter
-    * fixed overloading of array of char
-
-  Revision 1.59  1999/03/01 15:46:18  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
-
-  Revision 1.58  1999/02/25 21:02:23  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.57  1999/02/22 02:15:06  peter
-    * updates for ag386bin
-
-  Revision 1.56  1999/02/15 11:30:39  pierre
-   * memory leaks removed
-
-  Revision 1.55  1999/02/12 10:43:57  florian
-    * internal error 10 with ansistrings fixed
-
-  Revision 1.54  1999/02/02 12:35:02  florian
-    * ltemptoremove handling corrected
-
-  Revision 1.53  1999/02/02 11:47:55  peter
-    * fixed ansi2short
-
-  Revision 1.52  1999/01/29 11:22:13  pierre
-   * saving and restoring old ltemptoremove
-
-  Revision 1.51  1999/01/28 19:50:15  peter
-    * removed warning
-
-  Revision 1.50  1999/01/28 14:06:45  florian
-    * small fix for method pointers
-    * found the annoying strpas bug, mainly nested call to type cast which
-      use ansistrings crash
-
-  Revision 1.49  1999/01/27 14:56:56  pierre
-  * typo error corrected solves bug0190 and bug0204
-
-  Revision 1.48  1999/01/27 13:03:27  pierre
-   boolean to int conversion problems bug0205 bug0208
-
-  Revision 1.47  1999/01/27 12:59:32  pierre
-  wrong commit info : tccnv.pas
-
-  Revision 1.46  1999/01/27 00:13:53  florian
-    * "procedure of object"-stuff fixed
-
-  Revision 1.45  1999/01/21 22:10:36  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.44  1999/01/19 10:18:59  florian
-    * bug with mul. of dwords fixed, reported by Alexander Stohr
-    * some changes to compile with TP
-    + small enhancements for the new code generator
-
-  Revision 1.43  1998/12/22 13:10:59  florian
-    * memory leaks for ansistring type casts fixed
-
-  Revision 1.42  1998/12/19 00:23:42  florian
-    * ansistring memory leaks fixed
-
-  Revision 1.41  1998/11/30 19:48:54  peter
-    * some more rangecheck fixes
-
-  Revision 1.40  1998/11/30 09:43:02  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.39  1998/11/29 22:37:30  peter
-    * fixed constant ansistring -> pchar
-
-  Revision 1.38  1998/11/29 12:40:19  peter
-    * newcnv -> not oldcnv
-
-  Revision 1.37  1998/11/26 21:33:06  peter
-    * rangecheck updates
-
-  Revision 1.36  1998/11/26 14:39:11  peter
-    * ansistring -> pchar fixed
-    * ansistring constants fixed
-    * ansistring constants are now written once
-
-  Revision 1.35  1998/11/26 13:10:39  peter
-    * new int - int conversion -dNEWCNV
-    * some function renamings
-
-  Revision 1.34  1998/11/18 15:44:08  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.33  1998/11/17 00:36:39  peter
-    * more ansistring fixes
-
-  Revision 1.32  1998/11/16 15:35:38  peter
-    * rename laod/copystring -> load/copyshortstring
-    * fixed int-bool cnv bug
-    + char-ansistring conversion
-
-  Revision 1.31  1998/11/05 12:02:30  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.30  1998/10/27 11:12:45  peter
-    * fixed char_to_string which did not set the .loc
-
-  Revision 1.29  1998/10/26 15:18:41  peter
-    * fixed fldcw,fstcw for as 2.9.1
-
-  Revision 1.28  1998/10/08 17:17:11  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.27  1998/10/06 17:16:40  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.26  1998/10/02 07:20:35  florian
-    * range checking in units doesn't work if the units are smartlinked, fixed
-
-  Revision 1.25  1998/09/30 12:14:24  peter
-    * fixed boolean(longbool) conversion
-
-  Revision 1.24  1998/09/27 10:16:22  florian
-    * type casts pchar<->ansistring fixed
-    * ansistring[..] calls does now an unique call
-
-  Revision 1.23  1998/09/23 12:03:51  peter
-    * overloading fix for array of const
-
-  Revision 1.22  1998/09/22 15:34:09  peter
-    + pchar -> string conversion
-
-  Revision 1.21  1998/09/20 17:46:47  florian
-    * some things regarding ansistrings fixed
-
-  Revision 1.20  1998/09/17 09:42:12  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.19  1998/09/14 10:43:46  peter
-    * all internal RTL functions start with FPC_
-
-  Revision 1.18  1998/09/11 12:29:40  pierre
-    * removed explicit range_checking as it is buggy
-
-  Revision 1.17.2.1  1998/09/11 12:08:54  pierre
-    * removed explicit range_check was buggy
-
-  Revision 1.17  1998/09/04 08:41:38  peter
-    * updated some error CGMessages
-
-  Revision 1.16  1998/09/03 17:39:03  florian
-    + better code for type conversation longint/dword to real type
-
-  Revision 1.15  1998/09/03 16:24:50  florian
-    * bug of type conversation from dword to real fixed
-    * bug fix of Jonas applied
-
-  Revision 1.14  1998/08/28 12:51:39  florian
-    + ansistring to pchar type cast fixed
-
-  Revision 1.13  1998/08/28 10:56:56  peter
-    * removed warnings
-
-  Revision 1.12  1998/08/14 18:18:38  peter
-    + dynamic set contruction
-    * smallsets are now working (always longint size)
-
-  Revision 1.11  1998/08/10 23:59:59  peter
-    * fixed dup log
-
-  Revision 1.10  1998/08/10 14:49:47  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.9  1998/08/05 16:00:09  florian
-    * some fixes for ansi strings
-
-  Revision 1.8  1998/07/18 22:54:24  florian
-    * some ansi/wide/longstring support fixed:
-       o parameter passing
-       o returning as result from functions
-
-  Revision 1.7  1998/06/12 13:10:34  peter
-    * small internalerror nr change
-
-  Revision 1.6  1998/06/12 10:43:12  michael
-  Fixed ansistrings : is_ansistring not found
-
-  Revision 1.5  1998/06/08 13:13:30  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.4  1998/06/05 17:44:10  peter
-    * splitted cgi386
-
-  Revision 1.3  1998/06/03 22:48:50  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.2  1998/06/02 10:52:10  peter
-    * fixed second_bool_to_int with bool8bit return
-
-  Revision 1.1  1998/06/01 16:50:18  peter
-    + boolean -> ord conversion
-    * fixed ord -> boolean conversion
-
 }
 }

+ 4 - 89
compiler/cg386con.pas

@@ -431,7 +431,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.42  1999-09-26 21:30:15  peter
+  Revision 1.43  1999-11-06 14:34:17  peter
+    * truncated log to 20 revs
+
+  Revision 1.42  1999/09/26 21:30:15  peter
     + constant pointer support which can happend with typecasting like
     + constant pointer support which can happend with typecasting like
       const p=pointer(1)
       const p=pointer(1)
     * better procvar parsing in typed consts
     * better procvar parsing in typed consts
@@ -508,92 +511,4 @@ end.
     * ansistring constants fixed
     * ansistring constants fixed
     * ansistring constants are now written once
     * ansistring constants are now written once
 
 
-  Revision 1.22  1998/11/24 13:40:59  peter
-    * release smallsetord, so small sets constant are handled like longints
-
-  Revision 1.21  1998/11/24 12:52:41  peter
-    * sets are not written twice anymore
-    * optimize for emptyset+single element which uses a new routine from
-      set.inc FPC_SET_CREATE_ELEMENT
-
-  Revision 1.20  1998/11/16 12:11:29  peter
-    * fixed ansistring crash
-
-  Revision 1.19  1998/11/05 23:40:45  pierre
-   * fix for const strings
-
-  Revision 1.18  1998/11/05 15:26:38  pierre
-   * fix for missing zero after string const
-
-  Revision 1.17  1998/11/05 12:02:32  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.16  1998/11/04 21:07:43  michael
-  * undid peters change. Constant ansistrings should end on null too cd ..
-
-  Revision 1.15  1998/11/04 10:11:36  peter
-    * ansistring fixes
-
-  Revision 1.14  1998/09/17 09:42:13  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.13  1998/09/07 18:45:53  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.12  1998/08/28 10:56:57  peter
-    * removed warnings
-
-  Revision 1.11  1998/08/14 18:18:39  peter
-    + dynamic set contruction
-    * smallsets are now working (always longint size)
-
-  Revision 1.10  1998/08/04 13:22:46  pierre
-    * weird bug fixed :
-      a pchar ' ' (simple space or any other letter) was found to
-      be equal to a string of length zero !!!
-      thus printing out non sense
-      found that out while checking Control-C !!
-    + added column info also in RHIDE format as
-      it might be usefull later
-
-  Revision 1.9  1998/07/20 18:40:10  florian
-    * handling of ansi string constants should now work
-
-  Revision 1.8  1998/07/20 10:23:00  florian
-    * better ansi string assignement
-
-  Revision 1.7  1998/07/18 22:54:25  florian
-    * some ansi/wide/longstring support fixed:
-       o parameter passing
-       o returning as result from functions
-
-  Revision 1.6  1998/07/18 17:11:07  florian
-    + ansi string constants fixed
-    + switch $H partial implemented
-
-  Revision 1.5  1998/06/25 08:48:07  florian
-    * first version of rtti support
-
-  Revision 1.4  1998/06/08 13:13:31  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.3  1998/06/05 17:44:11  peter
-    * splitted cgi386
-
-  Revision 1.2  1998/06/05 16:13:31  pierre
-    * fix for real and string consts inside inlined procs
-
-  Revision 1.1  1998/05/23 01:21:02  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
 }
 }

+ 4 - 131
compiler/cg386flw.pas

@@ -769,7 +769,10 @@ do_jmp:
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.55  1999-10-30 17:35:26  peter
+  Revision 1.56  1999-11-06 14:34:17  peter
+    * truncated log to 20 revs
+
+  Revision 1.55  1999/10/30 17:35:26  peter
     * fpc_freemem fpc_getmem new callings updated
     * fpc_freemem fpc_getmem new callings updated
 
 
   Revision 1.54  1999/10/21 16:41:37  florian
   Revision 1.54  1999/10/21 16:41:37  florian
@@ -850,134 +853,4 @@ end.
   Revision 1.37  1999/05/17 21:57:01  florian
   Revision 1.37  1999/05/17 21:57:01  florian
     * new temporary ansistring handling
     * new temporary ansistring handling
 
 
-  Revision 1.36  1999/05/13 21:59:21  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.35  1999/05/01 13:24:07  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.34  1999/04/26 13:31:25  peter
-    * release storenumber,double_checksum
-
-  Revision 1.33  1999/04/21 09:43:29  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.32  1999/04/17 13:10:58  peter
-    * fixed exit()
-
-  Revision 1.31  1999/04/14 09:14:46  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.30  1999/03/05 16:14:59  peter
-    * fixed exit() with word/byte return
-
-  Revision 1.29  1999/02/25 21:02:26  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.28  1999/02/22 02:15:09  peter
-    * updates for ag386bin
-
-  Revision 1.27  1999/01/26 11:26:21  pierre
-   * bug0152 for i:=1 to i-5 do (i-5) evaluated first
-
-  Revision 1.26  1998/12/19 00:23:44  florian
-    * ansistring memory leaks fixed
-
-  Revision 1.25  1998/11/30 09:43:03  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.24  1998/11/18 15:44:09  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.23  1998/11/12 16:43:32  florian
-    * functions with ansi strings as result didn't work, solved
-
-  Revision 1.22  1998/10/29 15:42:44  florian
-    + partial disposing of temp. ansistrings
-
-  Revision 1.21  1998/10/26 22:58:16  florian
-    * new introduded problem with classes fix, the parent class wasn't set
-      correct, if the class was defined forward before
-
-  Revision 1.20  1998/10/06 17:16:42  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.19  1998/09/28 12:13:53  peter
-    * fixed repeat continue until true;
-
-  Revision 1.18  1998/09/26 15:03:04  florian
-    * small problems with DOM and excpetions fixed (code generation
-      of raise was wrong and self was sometimes destroyed :()
-
-  Revision 1.17  1998/09/17 09:42:14  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.16  1998/09/14 10:43:48  peter
-    * all internal RTL functions start with FPC_
-
-  Revision 1.15  1998/09/04 08:41:39  peter
-    * updated some error CGMessages
-
-  Revision 1.14  1998/09/03 17:08:39  pierre
-    * better lines for stabs
-      (no scroll back to if before else part
-      no return to case line at jump outside case)
-    + source lines also if not in order
-
-  Revision 1.13  1998/09/01 12:47:58  peter
-    * use pdef^.size instead of orddef^.typ
-
-  Revision 1.12  1998/08/28 10:56:58  peter
-    * removed warnings
-
-  Revision 1.11  1998/08/05 16:00:10  florian
-    * some fixes for ansi strings
-
-  Revision 1.10  1998/08/04 16:26:26  jonas
-    * converted // comment to TP comment
-
-  Revision 1.9  1998/07/31 11:36:34  michael
-  Default exception handler also needs to call FPC_CATCHES
-
-  Revision 1.8  1998/07/30 13:30:32  florian
-    * final implemenation of exception support, maybe it needs
-      some fixes :)
-
-  Revision 1.7  1998/07/30 11:18:13  florian
-    + first implementation of try ... except on .. do end;
-    * limitiation of 65535 bytes parameters for cdecl removed
-
-  Revision 1.6  1998/07/29 13:29:11  michael
-  + Corrected try.. code. Type of exception fram is pushed
-
-  Revision 1.5  1998/07/28 21:52:49  florian
-    + implementation of raise and try..finally
-    + some misc. exception stuff
-
-  Revision 1.4  1998/07/24 22:16:53  florian
-    * internal error 10 together with array access fixed. I hope
-      that's the final fix.
-
-  Revision 1.3  1998/06/25 08:48:08  florian
-    * first version of rtti support
-
-  Revision 1.2  1998/06/08 13:13:33  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.1  1998/06/05 17:44:12  peter
-    * splitted cgi386
-
 }
 }

+ 4 - 323
compiler/cg386inl.pas

@@ -1426,7 +1426,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.76  1999-10-29 15:28:51  peter
+  Revision 1.77  1999-11-06 14:34:17  peter
+    * truncated log to 20 revs
+
+  Revision 1.76  1999/10/29 15:28:51  peter
     * fixed assert, the tree is now disposed in firstpass if assertions
     * fixed assert, the tree is now disposed in firstpass if assertions
       are off.
       are off.
 
 
@@ -1510,326 +1513,4 @@ end.
     * some fixes for qword
     * some fixes for qword
     * start of register calling conventions
     * start of register calling conventions
 
 
-  Revision 1.56  1999/05/31 12:43:32  peter
-    * fixed register allocation for storefuncresult
-
-  Revision 1.55  1999/05/27 19:44:13  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.54  1999/05/23 19:55:11  florian
-    * qword/int64 multiplication fixed
-    + qword/int64 subtraction
-
-  Revision 1.53  1999/05/23 18:42:01  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.52  1999/05/21 13:54:50  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.51  1999/05/18 21:58:27  florian
-    * fixed some bugs related to temp. ansistrings and functions results
-      which return records/objects/arrays which need init/final.
-
-  Revision 1.50  1999/05/17 21:57:03  florian
-    * new temporary ansistring handling
-
-  Revision 1.49  1999/05/12 15:46:26  pierre
-   * handle_str disposetree was badly placed
-
-  Revision 1.48  1999/05/12 00:19:42  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.47  1999/05/06 09:05:13  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.46  1999/05/05 16:18:20  jonas
-    * changes to handle_val so register vars are pushed/poped only once
-
-  Revision 1.45  1999/05/01 13:24:08  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.44  1999/04/26 18:28:13  peter
-    * better read/write array
-
-  Revision 1.43  1999/04/19 09:45:48  pierre
-    +  cdecl or stdcall push all args with longint size
-    *  tempansi stuff cleaned up
-
-  Revision 1.42  1999/04/14 09:11:59  peter
-    * fixed include
-
-  Revision 1.41  1999/04/08 23:59:49  pierre
-   * temp string for val code freed
-
-  Revision 1.40  1999/04/08 15:57:46  peter
-    + subrange checking for readln()
-
-  Revision 1.39  1999/04/07 15:31:16  pierre
-    * all formaldefs are now a sinlge definition
-      cformaldef (this was necessary for double_checksum)
-    + small part of double_checksum code
-
-  Revision 1.38  1999/04/05 11:07:26  jonas
-    * fixed some typos in the constants of the range checking for Val
-
-  Revision 1.37  1999/04/01 22:07:51  peter
-    * universal string names (ansistr instead of stransi) for val/str
-
-  Revision 1.36  1999/04/01 06:21:04  jonas
-    * added initialization for has_32bit_code (caused problems with Val statement
-      without code parameter)
-
-  Revision 1.35  1999/03/31 20:30:49  michael
-  * fixed typo: odlval to oldval
-
-  Revision 1.34  1999/03/31 17:13:09  jonas
-    * bugfix for -Ox with internal val code
-    * internal val code now requires less free registers
-    * internal val code no longer needs a temp var for range checking
-
-  Revision 1.33  1999/03/26 00:24:15  peter
-    * last para changed to long for easier pushing with 4 byte aligns
-
-  Revision 1.32  1999/03/26 00:05:26  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.31  1999/03/24 23:16:49  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.30  1999/03/16 17:52:56  jonas
-    * changes for internal Val code (do a "make cycle OPT=-dvalintern" to test)
-    * in cgi386inl: also range checking for subrange types (compile with "-dreadrangecheck")
-    * in cgai386: also small fixes to emitrangecheck
-
-  Revision 1.29  1999/02/25 21:02:27  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.28  1999/02/22 02:15:11  peter
-    * updates for ag386bin
-
-  Revision 1.27  1999/02/17 14:21:40  pierre
-   * unused local removed
-
-  Revision 1.26  1999/02/15 11:40:21  pierre
-   * pred/succ with overflow check must use ADD DEC !!
-
-  Revision 1.25  1999/02/05 10:56:19  florian
-    * in some cases a writeln of temp. ansistrings cause a memory leak, fixed
-
-  Revision 1.24  1999/01/21 22:10:39  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.23  1999/01/06 12:23:29  florian
-    * str(...) for ansi/long and widestrings fixed
-
-  Revision 1.22  1998/12/11 23:36:07  florian
-    + again more stuff for int64/qword:
-         - comparision operators
-         - code generation for: str, read(ln), write(ln)
-
-  Revision 1.21  1998/12/11 00:02:50  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.20  1998/11/27 14:50:32  peter
-    + open strings, $P switch support
-
-  Revision 1.19  1998/11/26 13:10:40  peter
-    * new int - int conversion -dNEWCNV
-    * some function renamings
-
-  Revision 1.18  1998/11/24 17:04:27  peter
-    * fixed length(char) when char is a variable
-
-  Revision 1.17  1998/11/05 12:02:33  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.16  1998/10/22 17:11:13  pierre
-    + terminated the include exclude implementation for i386
-    * enums inside records fixed
-
-  Revision 1.15  1998/10/21 15:12:50  pierre
-    * bug fix for IOCHECK inside a procedure with iocheck modifier
-    * removed the GPF for unexistant overloading
-      (firstcall was called with procedinition=nil !)
-    * changed typen to what Florian proposed
-      gentypenode(p : pdef) sets the typenodetype field
-      and resulttype is only set if inside bt_type block !
-
-  Revision 1.14  1998/10/20 08:06:40  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.13  1998/10/13 16:50:02  pierre
-    * undid some changes of Peter that made the compiler wrong
-      for m68k (I had to reinsert some ifdefs)
-    * removed several memory leaks under m68k
-    * removed the meory leaks for assembler readers
-    * cross compiling shoud work again better
-      ( crosscompiling sysamiga works
-       but as68k still complain about some code !)
-
-  Revision 1.12  1998/10/08 17:17:12  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.11  1998/10/05 21:33:15  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.10  1998/10/05 12:32:44  peter
-    + assert() support
-
-  Revision 1.8  1998/10/02 10:35:09  peter
-    * support for inc(pointer,value) which now increases with value instead
-      of 0*value :)
-
-  Revision 1.7  1998/09/21 08:45:07  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.6  1998/09/20 12:26:37  peter
-    * merged fixes
-
-  Revision 1.5  1998/09/17 09:42:15  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.4  1998/09/14 10:43:49  peter
-    * all internal RTL functions start with FPC_
-
-  Revision 1.3.2.1  1998/09/20 12:20:07  peter
-    * Fixed stack not on 4 byte boundary when doing a call
-
-  Revision 1.3  1998/09/05 23:03:57  florian
-    * some fixes to get -Or work:
-      - inc/dec didn't take care of CREGISTER
-      - register calculcation of inc/dec was wrong
-      - var/const parameters get now assigned 32 bit register, but
-        const parameters only if they are passed by reference !
-
-  Revision 1.2  1998/09/04 08:41:40  peter
-    * updated some error CGMessages
-
-  Revision 1.1  1998/08/31 12:22:14  peter
-    * secondinline moved to cg386inl
-
-  Revision 1.19  1998/08/31 08:52:03  peter
-    * fixed error 10 with succ() and pref()
-
-  Revision 1.18  1998/08/20 21:36:38  peter
-    * fixed 'with object do' bug
-
-  Revision 1.17  1998/08/19 16:07:36  jonas
-    * changed optimizer switches + cleanup of DestroyRefs in daopt386.pas
-
-  Revision 1.16  1998/08/18 09:24:36  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.15  1998/08/13 11:00:09  peter
-    * fixed procedure<>procedure construct
-
-  Revision 1.14  1998/08/11 14:05:33  peter
-    * fixed sizeof(array of char)
-
-  Revision 1.13  1998/08/10 14:49:45  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.12  1998/07/30 13:30:31  florian
-    * final implemenation of exception support, maybe it needs
-      some fixes :)
-
-  Revision 1.11  1998/07/24 22:16:52  florian
-    * internal error 10 together with array access fixed. I hope
-      that's the final fix.
-
-  Revision 1.10  1998/07/18 22:54:23  florian
-    * some ansi/wide/longstring support fixed:
-       o parameter passing
-       o returning as result from functions
-
-  Revision 1.9  1998/07/07 17:40:37  peter
-    * packrecords 4 works
-    * word aligning of parameters
-
-  Revision 1.8  1998/07/06 15:51:15  michael
-  Added length checking for string reading
-
-  Revision 1.7  1998/07/06 14:19:51  michael
-  + Added calls for reading/writing ansistrings
-
-  Revision 1.6  1998/07/01 15:28:48  peter
-    + better writeln/readln handling, now 100% like tp7
-
-  Revision 1.5  1998/06/25 14:04:17  peter
-    + internal inc/dec
-
-  Revision 1.4  1998/06/25 08:48:06  florian
-    * first version of rtti support
-
-  Revision 1.3  1998/06/09 16:01:33  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.2  1998/06/08 13:13:29  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.1  1998/06/05 17:44:10  peter
-    * splitted cgi386
-
 }
 }

+ 4 - 274
compiler/cg386ld.pas

@@ -997,7 +997,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.89  1999-10-12 22:35:48  florian
+  Revision 1.90  1999-11-06 14:34:18  peter
+    * truncated log to 20 revs
+
+  Revision 1.89  1999/10/12 22:35:48  florian
     * compiler didn't complain about l1+l2:=l1+l2; it gave only an assembler
     * compiler didn't complain about l1+l2:=l1+l2; it gave only an assembler
       error, fixed
       error, fixed
 
 
@@ -1071,278 +1074,5 @@ end.
     + floating point register variables !!
     + floating point register variables !!
     * pairegalloc is now generated for register variables
     * pairegalloc is now generated for register variables
 
 
-  Revision 1.69  1999/08/04 00:22:50  florian
-    * renamed i386asm and i386base to cpuasm and cpubase
-
-  Revision 1.68  1999/08/03 22:02:43  peter
-    * moved bitmask constants to sets
-    * some other type/const renamings
-
-  Revision 1.67  1999/07/27 23:36:36  peter
-    * try to determine the fpu type needed in assignment
-
-  Revision 1.66  1999/07/24 15:12:56  michael
-  changes for resourcestrings
-
-  Revision 1.65  1999/07/23 23:09:06  peter
-    * resourcestring fix
-
-  Revision 1.64  1999/07/22 09:37:37  florian
-    + resourcestring implemented
-    + start of longstring support
-
-  Revision 1.63  1999/07/05 20:13:12  peter
-    * removed temp defines
-
-  Revision 1.62  1999/06/30 15:43:18  florian
-    * two bugs regarding method variables fixed
-      - if you take in a method the address of another method
-        don't need self anymore
-      - if the class pointer was in a register, wrong code for a method
-        variable load was generated
-
-  Revision 1.61  1999/06/28 22:29:11  florian
-    * qword division fixed
-    + code for qword/int64 type casting added:
-      range checking isn't implemented yet
-
-  Revision 1.60  1999/05/31 12:42:43  peter
-    * fixed crash with empty array constructor
-
-  Revision 1.59  1999/05/27 19:44:14  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.58  1999/05/23 18:42:02  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.57  1999/05/21 13:54:51  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.56  1999/05/17 23:51:38  peter
-    * with temp vars now use a reference with a persistant temp instead
-      of setting datasize
-
-  Revision 1.55  1999/05/17 21:57:04  florian
-    * new temporary ansistring handling
-
-  Revision 1.54  1999/05/12 00:19:43  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.53  1999/05/06 09:05:16  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.52  1999/05/01 13:24:10  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.51  1999/04/28 06:01:55  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.50  1999/04/16 13:42:26  jonas
-    * more regalloc fixes (still not complete)
-
-  Revision 1.49  1999/04/13 18:57:48  florian
-    * classes which contain ansistring get unnecessary calls
-      to addref/decref when they are assigned, fixed
-
-  Revision 1.48  1999/04/09 15:48:47  jonas
-    * added fix for missing register deallocation (-dregallocfix)
-
-  Revision 1.47  1999/03/31 13:55:07  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.46  1999/03/24 23:16:52  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.45  1999/02/25 21:02:28  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.44  1999/02/22 02:15:12  peter
-    * updates for ag386bin
-
-  Revision 1.43  1999/01/27 00:13:54  florian
-    * "procedure of object"-stuff fixed
-
-  Revision 1.42  1999/01/21 22:10:40  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.41  1999/01/20 10:20:18  peter
-    * don't make localvar copies for assembler procedures
-
-  Revision 1.40  1998/12/30 13:41:07  peter
-    * released valuepara
-
-  Revision 1.39  1998/12/19 00:23:45  florian
-    * ansistring memory leaks fixed
-
-  Revision 1.38  1998/12/11 00:02:51  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.37  1998/12/10 09:47:17  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.36  1998/12/04 10:18:06  florian
-    * some stuff for procedures of object added
-    * bug with overridden virtual constructors fixed (reported by Italo Gomes)
-
-  Revision 1.35  1998/11/30 09:43:04  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.34  1998/11/28 16:20:48  peter
-    + support for dll variables
-
-  Revision 1.33  1998/11/27 14:50:33  peter
-    + open strings, $P switch support
-
-  Revision 1.32  1998/11/26 09:53:36  florian
-    * for classes no init/final. code is necessary, fixed
-
-  Revision 1.31  1998/11/20 15:35:54  florian
-    * problems with rtti fixed, hope it works
-
-  Revision 1.30  1998/11/18 17:45:24  peter
-    * fixes for VALUEPARA
-
-  Revision 1.29  1998/11/18 15:44:11  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.28  1998/11/17 11:32:44  peter
-    * optimize str:='' in H+ mode
-    + -! to test ansistrings
-
-  Revision 1.27  1998/11/16 15:35:39  peter
-    * rename laod/copystring -> load/copyshortstring
-    * fixed int-bool cnv bug
-    + char-ansistring conversion
-
-  Revision 1.26  1998/11/10 10:09:10  peter
-    * va_list -> array of const
-
-  Revision 1.25  1998/11/05 12:02:35  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.24  1998/10/14 08:47:14  pierre
-    * bugs in secondfuncret for result in subprocedures removed
-
-  Revision 1.23  1998/10/06 17:16:44  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.22  1998/10/01 09:22:53  peter
-    * fixed value openarray
-    * ungettemp of arrayconstruct
-
-  Revision 1.21  1998/09/28 11:07:39  peter
-    + floatdef support for array of const
-
-  Revision 1.20  1998/09/24 14:26:03  peter
-    * updated for new tvarrec
-
-  Revision 1.19  1998/09/23 17:49:59  peter
-    * high(arrayconstructor) is now correct
-    * procvardef support for variant record
-
-  Revision 1.18  1998/09/23 09:58:48  peter
-    * first working array of const things
-
-  Revision 1.17  1998/09/20 18:00:19  florian
-    * small compiling problems fixed
-
-  Revision 1.16  1998/09/20 17:46:48  florian
-    * some things regarding ansistrings fixed
-
-  Revision 1.15  1998/09/17 09:42:16  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.14  1998/09/14 10:43:50  peter
-    * all internal RTL functions start with FPC_
-
-  Revision 1.13  1998/09/04 12:24:24  florian
-    * bug0159 fixed
-
-  Revision 1.12  1998/09/04 11:55:17  florian
-    * problem with -Or fixed
-
-  Revision 1.11  1998/09/03 16:03:14  florian
-    + rtti generation
-    * init table generation changed
-
-  Revision 1.10  1998/08/21 14:08:40  pierre
-    + TEST_FUNCRET now default (old code removed)
-      works also for m68k (at least compiles)
-
-  Revision 1.9  1998/08/20 09:26:37  pierre
-    + funcret setting in underproc testing
-      compile with _dTEST_FUNCRET
-
-  Revision 1.8  1998/08/10 14:49:48  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.7  1998/07/30 13:30:33  florian
-    * final implemenation of exception support, maybe it needs
-      some fixes :)
-
-  Revision 1.6  1998/07/26 21:58:57  florian
-   + better support for switch $H
-   + index access to ansi strings added
-   + assigment of data (records/arrays) containing ansi strings
-
-  Revision 1.5  1998/07/24 22:16:54  florian
-    * internal error 10 together with array access fixed. I hope
-      that's the final fix.
-
-  Revision 1.4  1998/06/11 13:58:45  peter
-    * fixed too long line
-
-  Revision 1.3  1998/06/09 16:01:35  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.2  1998/06/08 13:13:34  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.1  1998/06/05 17:44:12  peter
-    * splitted cgi386
-
 }
 }
 
 

+ 4 - 58
compiler/cg386mat.pas

@@ -940,7 +940,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.34  1999-09-28 19:43:47  florian
+  Revision 1.35  1999-11-06 14:34:18  peter
+    * truncated log to 20 revs
+
+  Revision 1.34  1999/09/28 19:43:47  florian
     * the maybe_push fix of Pierre wasn't 100%, the tree parameter
     * the maybe_push fix of Pierre wasn't 100%, the tree parameter
       must contain a valid location (which is saved if necessary)
       must contain a valid location (which is saved if necessary)
 
 
@@ -1019,61 +1022,4 @@ end.
     + unary minus-operator  q1:=-q2;
     + unary minus-operator  q1:=-q2;
     + not-operator
     + not-operator
 
 
-  Revision 1.14  1998/12/11 16:10:07  florian
-    + shifting for 64 bit ints added
-    * bug in getexplicitregister32 fixed: usableregs wasn't decremented !!
-
-  Revision 1.13  1998/12/11 00:02:52  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.12  1998/11/26 21:45:29  jonas
-    - removed A_CLTD opcode (use A_CDQ instead)
-    * changed cbw, cwde and cwd to cbtw, cwtl and cwtd in att_op2str array
-    * in daopt386: adapted AsmInstr array to reflect changes + fixed line too long
-
-  Revision 1.11  1998/11/05 14:26:02  peter
-    * fixed shlshr which would push ecx when not needed
-
-  Revision 1.10  1998/10/20 13:12:38  peter
-    * fixed 'not not boolean', the location was not set to register
-
-  Revision 1.9  1998/10/20 08:06:42  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.8  1998/10/09 08:56:24  pierre
-    * several memory leaks fixed
-
-  Revision 1.7  1998/09/17 09:42:17  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.6  1998/09/09 14:37:37  florian
-    * mod/div for cardinal type fixed
-
-  Revision 1.5  1998/08/23 16:07:20  florian
-    * internalerror with mod/div fixed
-
-  Revision 1.4  1998/08/18 09:24:38  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.3  1998/06/05 17:44:12  peter
-    * splitted cgi386
-
-  Revision 1.2  1998/06/02 17:02:59  pierre
-    *  with node corrected for objects
-    * small bugs for SUPPORT_MMX fixed
-
-  Revision 1.1  1998/06/01 16:50:18  peter
-    + boolean -> ord conversion
-    * fixed ord -> boolean conversion
-
 }
 }

+ 4 - 139
compiler/cg386mem.pas

@@ -861,7 +861,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.59  1999-10-30 17:35:26  peter
+  Revision 1.60  1999-11-06 14:34:18  peter
+    * truncated log to 20 revs
+
+  Revision 1.59  1999/10/30 17:35:26  peter
     * fpc_freemem fpc_getmem new callings updated
     * fpc_freemem fpc_getmem new callings updated
 
 
   Revision 1.58  1999/09/17 17:14:02  peter
   Revision 1.58  1999/09/17 17:14:02  peter
@@ -943,143 +946,5 @@ end.
     * containsself fixes
     * containsself fixes
     * checktypes()
     * checktypes()
 
 
-  Revision 1.39  1999/05/17 23:51:39  peter
-    * with temp vars now use a reference with a persistant temp instead
-      of setting datasize
-
-  Revision 1.38  1999/05/17 21:57:05  florian
-    * new temporary ansistring handling
-
-  Revision 1.37  1999/05/17 14:14:14  pierre
-   + -gc for check pointer with heaptrc
-
-  Revision 1.36  1999/05/12 00:19:44  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.35  1999/05/01 13:24:13  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.34  1999/04/26 18:29:54  peter
-    * farpointerdef moved into pointerdef.is_far
-
-  Revision 1.33  1999/03/26 11:43:26  pierre
-   * bug0236 fixed
-
-  Revision 1.32  1999/03/24 23:16:53  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.31  1999/02/25 21:02:29  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.30  1999/02/22 02:15:14  peter
-    * updates for ag386bin
-
-  Revision 1.29  1999/02/07 22:53:07  florian
-    * potential bug in secondvecn fixed
-
-  Revision 1.28  1999/02/04 17:16:51  peter
-    * fixed crash with temp ansistring indexing
-
-  Revision 1.27  1999/02/04 11:44:46  florian
-    * fixed indexed access of ansistrings to temp. ansistring, i.e.
-      c:=(s1+s2)[i], the temp is now correctly remove and the generated
-      code is also fixed
-
-  Revision 1.26  1999/02/04 10:49:41  florian
-    + range checking for ansi- and widestrings
-    * made it compilable with TP
-
-  Revision 1.25  1999/01/21 16:40:52  pierre
-   * fix for constructor inside with statements
-
-  Revision 1.24  1999/01/19 12:05:27  pierre
-   * bug with @procvar=procvar fiwed
-
-  Revision 1.23  1998/12/30 22:15:45  peter
-    + farpointer type
-    * absolutesym now also stores if its far
-
-  Revision 1.22  1998/12/11 00:02:55  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.21  1998/12/10 09:47:18  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.20  1998/11/25 19:12:54  pierre
-    * var:=new(pointer_type) support added
-
-  Revision 1.19  1998/11/20 15:35:55  florian
-    * problems with rtti fixed, hope it works
-
-  Revision 1.18  1998/11/17 00:36:40  peter
-    * more ansistring fixes
-
-  Revision 1.17  1998/11/16 15:35:09  pierre
-   * added error for with if different segment
-
-  Revision 1.16  1998/10/21 11:44:42  florian
-    + check for access to index 0 of long/wide/ansi strings added,
-      gives now an error
-    * problem with access to contant index of ansistrings fixed
-
-  Revision 1.15  1998/10/12 09:49:53  florian
-    + support of <procedure var type>:=<pointer> in delphi mode added
-
-  Revision 1.14  1998/10/02 07:20:37  florian
-    * range checking in units doesn't work if the units are smartlinked, fixed
-
-  Revision 1.13  1998/09/27 10:16:23  florian
-    * type casts pchar<->ansistring fixed
-    * ansistring[..] calls does now an unique call
-
-  Revision 1.12  1998/09/23 15:46:36  florian
-    * problem with with and classes fixed
-
-  Revision 1.11  1998/09/17 09:42:18  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.10  1998/09/14 10:43:52  peter
-    * all internal RTL functions start with FPC_
-
-  Revision 1.9  1998/09/03 16:03:15  florian
-    + rtti generation
-    * init table generation changed
-
-  Revision 1.8  1998/08/23 21:04:34  florian
-    + rtti generation for classes added
-    + new/dispose do now also a call to INITIALIZE/FINALIZE, if necessaray
-
-  Revision 1.7  1998/08/20 11:27:40  michael
-  * Applied Peters Fix
-
-  Revision 1.6  1998/08/10 14:49:49  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.5  1998/07/26 21:58:58  florian
-   + better support for switch $H
-   + index access to ansi strings added
-   + assigment of data (records/arrays) containing ansi strings
-
-  Revision 1.4  1998/07/24 22:16:55  florian
-    * internal error 10 together with array access fixed. I hope
-      that's the final fix.
-
-  Revision 1.3  1998/06/25 08:48:09  florian
-    * first version of rtti support
-
-  Revision 1.2  1998/06/08 13:13:35  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.1  1998/06/05 17:44:13  peter
-    * splitted cgi386
-
 }
 }
 
 

+ 4 - 79
compiler/cg386set.pas

@@ -919,7 +919,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.42  1999-09-27 23:44:48  peter
+  Revision 1.43  1999-11-06 14:34:18  peter
+    * truncated log to 20 revs
+
+  Revision 1.42  1999/09/27 23:44:48  peter
     * procinfo is now a pointer
     * procinfo is now a pointer
     * support for result setting in sub procedure
     * support for result setting in sub procedure
 
 
@@ -996,83 +999,5 @@ end.
     * ag386bin updates
     * ag386bin updates
     + coff writer
     + coff writer
 
 
-  Revision 1.22  1999/02/22 02:15:16  peter
-    * updates for ag386bin
-
-  Revision 1.21  1999/02/17 10:12:59  peter
-    * removed memory leak when jumps are generated
-
-  Revision 1.20  1998/12/11 00:02:56  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.19  1998/10/09 08:56:25  pierre
-    * several memory leaks fixed
-
-  Revision 1.18  1998/10/08 17:17:14  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.17  1998/09/17 09:42:20  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.16  1998/09/14 10:43:53  peter
-    * all internal RTL functions start with FPC_
-
-  Revision 1.15  1998/09/09 17:51:59  florian
-    * the next try to fix the case problem ...
-
-  Revision 1.14  1998/09/09 16:44:21  florian
-    * I hope, the case bug is fixed now
-
-  Revision 1.13  1998/09/07 18:45:54  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.12  1998/09/05 23:51:05  florian
-    * possible bug with too few registers in first/secondin fixed
-
-  Revision 1.11  1998/09/04 08:41:41  peter
-    * updated some error messages
-
-  Revision 1.10  1998/09/03 17:08:40  pierre
-    * better lines for stabs
-      (no scroll back to if before else part
-      no return to case line at jump outside case)
-    + source lines also if not in order
-
-  Revision 1.9  1998/08/28 10:54:19  peter
-    * fixed smallset generation from elements, it has never worked before!
-
-  Revision 1.8  1998/08/25 11:51:46  peter
-    * fixed -15 seen as byte in case
-
-  Revision 1.7  1998/08/19 16:07:38  jonas
-    * changed optimizer switches + cleanup of DestroyRefs in daopt386.pas
-
-  Revision 1.6  1998/08/18 09:24:39  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.5  1998/08/14 18:18:40  peter
-    + dynamic set contruction
-    * smallsets are now working (always longint size)
-
-  Revision 1.4  1998/08/10 14:49:51  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.3  1998/06/25 08:48:10  florian
-    * first version of rtti support
-
-  Revision 1.2  1998/06/16 08:56:18  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.1  1998/06/05 17:44:13  peter
-    * splitted cgi386
-
 }
 }
 
 

+ 4 - 4
compiler/cg68kcal.pas

@@ -1069,7 +1069,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.20  1999-09-27 23:44:48  peter
+  Revision 1.21  1999-11-06 14:34:18  peter
+    * truncated log to 20 revs
+
+  Revision 1.20  1999/09/27 23:44:48  peter
     * procinfo is now a pointer
     * procinfo is now a pointer
     * support for result setting in sub procedure
     * support for result setting in sub procedure
 
 
@@ -1169,8 +1172,5 @@ end.
   Revision 1.2  1998/09/01 12:47:59  peter
   Revision 1.2  1998/09/01 12:47:59  peter
     * use pdef^.size instead of orddef^.typ
     * use pdef^.size instead of orddef^.typ
 
 
-  Revision 1.1  1998/09/01 09:07:09  peter
-    * m68k fixes, splitted cg68k like cgi386
-
 }
 }
 
 

+ 4 - 55
compiler/cga68k.pas

@@ -1391,7 +1391,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.35  1999-09-27 23:44:48  peter
+  Revision 1.36  1999-11-06 14:34:18  peter
+    * truncated log to 20 revs
+
+  Revision 1.35  1999/09/27 23:44:48  peter
     * procinfo is now a pointer
     * procinfo is now a pointer
     * support for result setting in sub procedure
     * support for result setting in sub procedure
 
 
@@ -1491,58 +1494,4 @@ end.
   Revision 1.16  1998/09/14 10:44:04  peter
   Revision 1.16  1998/09/14 10:44:04  peter
     * all internal RTL functions start with FPC_
     * all internal RTL functions start with FPC_
 
 
-  Revision 1.15  1998/09/07 18:46:00  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.14  1998/09/04 08:41:50  peter
-    * updated some error CGMessages
-
-  Revision 1.13  1998/09/01 12:48:02  peter
-    * use pdef^.size instead of orddef^.typ
-
-  Revision 1.12  1998/09/01 09:07:09  peter
-    * m68k fixes, splitted cg68k like cgi386
-
-  Revision 1.11  1998/08/31 12:26:24  peter
-    * m68k and palmos updates from surebugfixes
-
-  Revision 1.10  1998/08/21 14:08:41  pierre
-    + TEST_FUNCRET now default (old code removed)
-      works also for m68k (at least compiles)
-
-  Revision 1.9  1998/08/17 10:10:04  peter
-    - removed OLDPPU
-
-  Revision 1.8  1998/08/10 14:43:16  peter
-    * string type st_ fixed
-
-  Revision 1.7  1998/07/10 10:51:01  peter
-    * m68k updates
-
-  Revision 1.6  1998/06/08 13:13:39  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.5  1998/06/04 23:51:36  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.4  1998/05/07 00:17:00  peter
-    * smartlinking for sets
-    + consts labels are now concated/generated in hcodegen
-    * moved some cpu code to cga and some none cpu depended code from cga
-      to tree and hcodegen and cleanup of hcodegen
-    * assembling .. output reduced for smartlinking ;)
-
-  Revision 1.3  1998/04/29 10:33:46  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
 }
 }

+ 4 - 778
compiler/cgai386.pas

@@ -3447,7 +3447,10 @@ procedure mov_reg_to_dest(p : ptree; s : topsize; reg : tregister);
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.56  1999-10-25 12:18:11  peter
+  Revision 1.57  1999-11-06 14:34:19  peter
+    * truncated log to 20 revs
+
+  Revision 1.56  1999/10/25 12:18:11  peter
     * fixed bug 301
     * fixed bug 301
 
 
   Revision 1.55  1999/10/21 16:41:38  florian
   Revision 1.55  1999/10/21 16:41:38  florian
@@ -3526,781 +3529,4 @@ end.
   Revision 1.37  1999/09/02 17:07:38  florian
   Revision 1.37  1999/09/02 17:07:38  florian
     * problems with -Or fixed: tdef.isfpuregable was wrong!
     * problems with -Or fixed: tdef.isfpuregable was wrong!
 
 
-  Revision 1.36  1999/09/01 09:26:23  peter
-    * fixed temp allocation for arrayconstructor
-
-  Revision 1.35  1999/08/30 12:00:44  pierre
-   * problem with maybe_push/restore solved hopefully
-
-  Revision 1.34  1999/08/30 09:41:31  pierre
-   * last change undone because cycle was broken
-
-  Revision 1.33  1999/08/28 17:48:34  peter
-    * fixed crash in restore
-
-  Revision 1.32  1999/08/28 15:34:17  florian
-    * bug 519 fixed
-
-  Revision 1.31  1999/08/25 11:59:55  jonas
-    * changed pai386, paippc and paiapha (same for tai*) to paicpu (taicpu)
-
-  Revision 1.30  1999/08/19 13:06:45  pierre
-    * _FAIL will now free memory correctly
-      and reset VMT field on static instances
-      (not yet tested for classes, is it allowed ?)
-    + emit_.... all variant defined here to avoid tons of
-      exprasmlist^.concat(new(paicpu,...) in cg386***
-
-  Revision 1.29  1999/08/14 00:36:07  peter
-    * array constructor support
-
-  Revision 1.28  1999/08/07 14:20:57  florian
-    * some small problems fixed
-
-  Revision 1.27  1999/08/05 23:45:09  peter
-    * saveregister is now working and used for assert and iocheck (which has
-      been moved to system.inc because it's now system independent)
-
-  Revision 1.26  1999/08/05 14:58:04  florian
-    * some fixes for the floating point registers
-    * more things for the new code generator
-
-  Revision 1.25  1999/08/04 13:45:24  florian
-    + floating point register variables !!
-    * pairegalloc is now generated for register variables
-
-  Revision 1.24  1999/08/04 00:22:55  florian
-    * renamed i386asm and i386base to cpuasm and cpubase
-
-  Revision 1.23  1999/08/03 22:02:49  peter
-    * moved bitmask constants to sets
-    * some other type/const renamings
-
-  Revision 1.22  1999/08/01 23:36:39  florian
-    * some changes to compile the new code generator
-
-  Revision 1.21  1999/08/01 17:32:31  florian
-    * more fixes for inittable call
-
-  Revision 1.20  1999/08/01 17:17:37  florian
-    * tried to fix a bug with init table
-
-  Revision 1.19  1999/07/29 20:53:58  peter
-    * write .size also
-
-  Revision 1.18  1999/07/26 12:13:46  florian
-    * exit in try..finally blocks needed a second fix
-    * a raise in a try..finally lead into a endless loop, fixed
-
-  Revision 1.17  1999/07/22 09:37:38  florian
-    + resourcestring implemented
-    + start of longstring support
-
-  Revision 1.16  1999/07/18 10:41:59  florian
-    * fix of my previous commit nevertheless it doesn't work completly
-
-  Revision 1.15  1999/07/18 10:19:44  florian
-    * made it compilable with Dlephi 4 again
-    + fixed problem with large stack allocations on win32
-
-  Revision 1.14  1999/07/06 21:48:11  florian
-    * a lot bug fixes:
-       - po_external isn't any longer necessary for procedure compatibility
-       - m_tp_procvar is in -Sd now available
-       - error messages of procedure variables improved
-       - return values with init./finalization fixed
-       - data types with init./finalization aren't any longer allowed in variant
-         record
-
-  Revision 1.13  1999/07/05 20:25:22  peter
-    * merged
-
-  Revision 1.12  1999/07/05 20:13:13  peter
-    * removed temp defines
-
-  Revision 1.11  1999/07/05 11:56:56  jonas
-    * merged
-
-  Revision 1.5.2.5  1999/07/05 20:03:31  peter
-    * removed warning/notes
-
-  Revision 1.5.2.3  1999/07/04 21:50:17  jonas
-    * everything between $ifdef jmpfix:
-      * when a jxx instruction is disposed, decrease the refcount of the label
-        it referenced
-      * for jmp instructions to a label, set is_jmp also to true (was only done
-        for Jcc instructions)
-
-  Revision 1.9  1999/07/01 15:49:11  florian
-    * int64/qword type release
-    + lo/hi for int64/qword
-
-  Revision 1.8  1999/06/28 22:29:15  florian
-    * qword division fixed
-    + code for qword/int64 type casting added:
-      range checking isn't implemented yet
-
-  Revision 1.7  1999/06/17 13:19:50  pierre
-   * merged from 0_99_12 branch
-
-  Revision 1.5.2.2  1999/06/17 12:38:39  pierre
-   * wrong warning for operators removed
-
-  Revision 1.6  1999/06/14 17:47:48  peter
-    * merged
-
-  Revision 1.5.2.1  1999/06/14 17:27:08  peter
-    * fixed posavestd regs which popped at the wrong place
-
-  Revision 1.5  1999/06/03 16:21:15  pierre
-   * fixes a bug due to int64 code in maybe_savetotemp
-
-  Revision 1.4  1999/06/02 22:44:06  pierre
-   * previous wrong log corrected
-
-  Revision 1.3  1999/06/02 22:25:29  pierre
-  * changed $ifdef FPC @ into $ifndef TP
-
-  Revision 1.2  1999/06/02 10:11:49  florian
-    * make cycle fixed i.e. compilation with 0.99.10
-    * some fixes for qword
-    * start of register calling conventions
-
-  Revision 1.1  1999/06/01 19:33:18  peter
-    * reinserted
-
-  Revision 1.158  1999/06/01 14:45:46  peter
-    * @procvar is now always needed for FPC
-
-  Revision 1.157  1999/05/27 19:44:20  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.156  1999/05/24 08:55:24  florian
-    * non working safecall directiv implemented, I don't know if we
-      need it
-
-  Revision 1.155  1999/05/23 19:55:14  florian
-    * qword/int64 multiplication fixed
-    + qword/int64 subtraction
-
-  Revision 1.154  1999/05/23 18:42:05  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.153  1999/05/21 13:54:55  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.152  1999/05/19 22:00:45  florian
-    * some new routines for register management:
-       maybe_savetotemp,restorefromtemp, saveusedregisters,
-       restoreusedregisters
-
-  Revision 1.151  1999/05/19 20:40:11  florian
-    * fixed a couple of array related bugs:
-      - var a : array[0..1] of char;   p : pchar;  p:=a+123; works now
-      - open arrays with an odd size doesn't work: movsb wasn't generated
-      - introduced some new array type helper routines (is_special_array) etc.
-      - made the array type checking in isconvertable more strict, often
-        open array can be used where is wasn't allowed etc...
-
-  Revision 1.150  1999/05/19 15:26:30  florian
-    * if a non local variables isn't initialized the compiler doesn't write
-      any longer "local var. seems not to be ..."
-
-  Revision 1.149  1999/05/19 13:59:07  jonas
-    * no more "enter" generated when -Og is used (caused sometimes crashes under
-      Linux, don't know why)
-
-  Revision 1.148  1999/05/18 21:58:30  florian
-    * fixed some bugs related to temp. ansistrings and functions results
-      which return records/objects/arrays which need init/final.
-
-  Revision 1.147  1999/05/18 14:15:28  peter
-    * containsself fixes
-    * checktypes()
-
-  Revision 1.146  1999/05/17 22:42:26  florian
-    * FPC_ANSISTR_DECR_REF needs a reference!
-
-  Revision 1.145  1999/05/17 21:57:06  florian
-    * new temporary ansistring handling
-
-  Revision 1.144  1999/05/15 21:33:18  peter
-    * redesigned temp_gen temp allocation so temp allocation for
-      ansistring works correct. It also does a best fit instead of first fit
-
-  Revision 1.143  1999/05/13 21:59:22  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.142  1999/05/12 00:19:46  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.141  1999/05/07 00:33:44  pierre
-   explicit type conv to pobject checked with cond TESTOBJEXT2
-
-  Revision 1.140  1999/05/06 09:05:17  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.139  1999/05/04 21:44:35  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.138  1999/05/02 09:35:36  florian
-    + method message handlers which contain an explicit self can't be called
-      directly anymore
-    + self is now loaded at the start of the an message handler with an explicit
-      self
-    + $useoverlay fixed: i386 was renamed to i386base
-
-  Revision 1.137  1999/05/01 13:24:16  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.136  1999/04/28 06:01:56  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.135  1999/04/26 13:31:26  peter
-    * release storenumber,double_checksum
-
-  Revision 1.134  1999/04/21 21:53:08  pierre
-   * previous log corrected
-
-  Revision 1.133  1999/04/21 16:31:38  pierre
-  + TEMPS_NOT_PUSH conditional code :
-    put needed registers into temp space instead of pushing them
-
-  Revision 1.132  1999/04/21 09:43:30  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.131  1999/04/19 09:45:49  pierre
-    +  cdecl or stdcall push all args with longint size
-    *  tempansi stuff cleaned up
-
-  Revision 1.130  1999/04/17 13:14:50  peter
-    * concat_external added for new init/final
-
-  Revision 1.129  1999/04/16 20:44:35  florian
-    * the boolean operators =;<>;xor with LOC_JUMP and LOC_FLAGS
-      operands fixed, small things for new ansistring management
-
-  Revision 1.128  1999/04/16 13:42:31  jonas
-    * more regalloc fixes (still not complete)
-
-  Revision 1.127  1999/04/16 10:28:23  pierre
-    + added posavestdregs used for cdecl AND stdcall functions
-      (saves ESI EDI and EBX for i386)
-
-  Revision 1.126  1999/04/16 09:56:06  pierre
-   * unused local var commented
-
-  Revision 1.125  1999/04/15 13:08:30  pierre
-   * misplaced statement in concatcopy corrected
-
-  Revision 1.124  1999/04/15 12:19:55  peter
-    + finalization support
-
-  Revision 1.123  1999/04/09 00:00:52  pierre
-   + uses ungetiftempansi
-
-  Revision 1.122  1999/04/08 15:57:47  peter
-    + subrange checking for readln()
-
-  Revision 1.121  1999/03/31 13:55:08  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.120  1999/03/26 00:05:27  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.119  1999/03/24 23:16:55  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.118  1999/03/16 17:52:49  jonas
-    * changes for internal Val code (do a "make cycle OPT=-dvalintern" to test)
-    * in cgi386inl: also range checking for subrange types (compile with "-dreadrangecheck")
-    * in cgai386: also small fixes to emitrangecheck
-
-  Revision 1.117  1999/03/09 19:29:12  peter
-    * ecxpushed was not reset in concatcopy
-
-  Revision 1.116  1999/03/09 11:45:40  pierre
-   * small arrays and records (size <=4) are copied directly
-
-  Revision 1.115  1999/03/03 12:15:13  pierre
-   * U_SYSWIN32_ISCONSOLE adde to external list
-
-  Revision 1.114  1999/03/02 18:21:33  peter
-    + flags support for add and case
-
-  Revision 1.113  1999/03/01 15:46:19  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
-
-  Revision 1.112  1999/03/01 13:39:44  pierre
-   * temp for int_value const parameters
-
-  Revision 1.111  1999/02/25 21:02:32  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.110  1999/02/22 02:15:17  peter
-    * updates for ag386bin
-
-  Revision 1.109  1999/02/16 00:46:09  peter
-    * optimized concatcopy with ecx=1 and ecx=0
-
-  Revision 1.108  1999/02/15 13:13:14  pierre
-   * fix for bug0216
-
-  Revision 1.107  1999/02/12 10:43:58  florian
-    * internal error 10 with ansistrings fixed
-
-  Revision 1.106  1999/02/03 09:50:22  pierre
-   * conditional code to try to release temp for consts that are not in memory
-
-  Revision 1.105  1999/02/02 11:47:56  peter
-    * fixed ansi2short
-
-  Revision 1.104  1999/01/25 09:29:36  florian
-    * very rare problem with in-operator fixed, mainly it was a problem of
-      emit_to_reg32 (typo in case ranges)
-
-  Revision 1.103  1999/01/21 22:10:42  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.102  1999/01/19 10:19:00  florian
-    * bug with mul. of dwords fixed, reported by Alexander Stohr
-    * some changes to compile with TP
-    + small enhancements for the new code generator
-
-  Revision 1.101  1999/01/15 11:36:48  pierre
-   * double temp disallocation on ansistring removed
-
-  Revision 1.100  1998/12/30 13:41:08  peter
-    * released valuepara
-
-  Revision 1.99  1998/12/22 13:11:00  florian
-    * memory leaks for ansistring type casts fixed
-
-  Revision 1.98  1998/12/19 00:23:46  florian
-    * ansistring memory leaks fixed
-
-  Revision 1.97  1998/12/11 16:10:08  florian
-    + shifting for 64 bit ints added
-    * bug in getexplicitregister32 fixed: usableregs wasn't decremented !!
-
-  Revision 1.96  1998/12/11 00:03:11  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.95  1998/12/10 09:47:19  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.94  1998/12/03 10:17:27  peter
-    * target_os.use_bound_instruction boolean
-
-  Revision 1.93  1998/11/30 19:48:56  peter
-    * some more rangecheck fixes
-
-  Revision 1.92  1998/11/30 16:34:44  pierre
-    * corrected problems with rangecheck
-    + added needed code for no rangecheck  in CRC32 functions in ppu unit
-    * enumdef lso need its rangenr reset to zero
-      when calling reset_global_defs
-
-  Revision 1.91  1998/11/30 09:43:07  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.90  1998/11/29 12:43:45  peter
-    * commented the fpc_init_stack_check becuase it is not in the RTL
-
-  Revision 1.89  1998/11/27 14:50:34  peter
-    + open strings, $P switch support
-
-  Revision 1.88  1998/11/26 21:33:07  peter
-    * rangecheck updates
-
-  Revision 1.87  1998/11/26 13:10:41  peter
-    * new int - int conversion -dNEWCNV
-    * some function renamings
-
-  Revision 1.86  1998/11/26 09:53:37  florian
-    * for classes no init/final. code is necessary, fixed
-
-  Revision 1.85  1998/11/20 15:35:56  florian
-    * problems with rtti fixed, hope it works
-
-  Revision 1.84  1998/11/18 17:45:25  peter
-    * fixes for VALUEPARA
-
-  Revision 1.83  1998/11/18 15:44:12  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.82  1998/11/17 00:36:41  peter
-    * more ansistring fixes
-
-  Revision 1.81  1998/11/16 19:23:33  florian
-    * isconsole is now set by win32 applications
-
-  Revision 1.80  1998/11/16 15:35:40  peter
-    * rename laod/copystring -> load/copyshortstring
-    * fixed int-bool cnv bug
-    + char-ansistring conversion
-
-  Revision 1.79  1998/11/16 11:28:56  pierre
-    * stackcheck removed for i386_win32
-    * exportlist does not crash at least !!
-      (was need for tests dir !)z
-
-  Revision 1.78  1998/11/15 16:32:34  florian
-    * some stuff of Pavel implement (win32 dll creation)
-    * bug with ansistring function results fixed
-
-  Revision 1.77  1998/11/13 15:40:17  pierre
-    + added -Se in Makefile cvstest target
-    + lexlevel cleanup
-      normal_function_level main_program_level and unit_init_level defined
-    * tins_cache grown to A_EMMS (gave range check error in asm readers)
-      (test added in code !)
-    * -Un option was wrong
-    * _FAIL and _SELF only keyword inside
-      constructors and methods respectively
-
-  Revision 1.76  1998/11/12 16:43:33  florian
-    * functions with ansi strings as result didn't work, solved
-
-  Revision 1.75  1998/11/12 11:19:44  pierre
-   * fix for first line of function break
-
-  Revision 1.74  1998/11/12 09:46:18  pierre
-    + break main stops before calls to unit inits
-    + break at constructors stops before call to FPC_NEW_CLASS
-      or FPC_HELP_CONSTRUCTOR
-
-  Revision 1.73  1998/11/10 10:50:55  pierre
-   * temporary fix for long mangled procsym names
-
-  Revision 1.72  1998/11/05 12:02:40  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.71  1998/10/29 15:42:45  florian
-    + partial disposing of temp. ansistrings
-
-  Revision 1.70  1998/10/25 23:32:49  peter
-    * fixed unsigned mul
-
-  Revision 1.69  1998/10/20 13:11:33  peter
-    + def_getreg to get a register with the same size as definition
-
-  Revision 1.68  1998/10/20 08:06:48  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.67  1998/10/16 13:12:50  pierre
-    * added vmt_offsets in destructors code also !!!
-    * vmt_offset code for m68k
-
-  Revision 1.66  1998/10/16 08:48:40  peter
-    * fixed some misplaced $endif GDB
-
-  Revision 1.65  1998/10/15 12:37:40  pierre
-    + passes vmt offset to HELP_CONSTRUCTOR for objects
-
-  Revision 1.64  1998/10/13 16:50:13  pierre
-    * undid some changes of Peter that made the compiler wrong
-      for m68k (I had to reinsert some ifdefs)
-    * removed several memory leaks under m68k
-    * removed the meory leaks for assembler readers
-    * cross compiling shoud work again better
-      ( crosscompiling sysamiga works
-       but as68k still complain about some code !)
-
-  Revision 1.63  1998/10/13 13:10:13  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.62  1998/10/08 17:17:17  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.61  1998/10/08 13:48:41  peter
-    * fixed memory leaks for do nothing source
-    * fixed unit interdependency
-
-  Revision 1.60  1998/10/07 10:37:43  peter
-    * fixed stabs
-
-  Revision 1.59  1998/10/06 17:16:45  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.58  1998/10/05 21:33:16  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.57  1998/10/01 09:22:54  peter
-    * fixed value openarray
-    * ungettemp of arrayconstruct
-
-  Revision 1.56  1998/09/28 16:57:19  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.55  1998/09/28 16:18:15  florian
-    * two fixes to get ansi strings work
-
-  Revision 1.54  1998/09/20 17:46:49  florian
-    * some things regarding ansistrings fixed
-
-  Revision 1.53  1998/09/20 09:38:44  florian
-    * hasharray for defs fixed
-    * ansistring code generation corrected (init/final, assignement)
-
-  Revision 1.52  1998/09/17 09:42:31  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.51  1998/09/14 10:44:05  peter
-    * all internal RTL functions start with FPC_
-
-  Revision 1.50  1998/09/07 18:46:01  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.49  1998/09/05 22:10:52  florian
-    + switch -vb
-    * while/repeat loops accept now also word/longbool conditions
-    * makebooltojump did an invalid ungetregister32, fixed
-
-  Revision 1.48  1998/09/04 08:41:52  peter
-    * updated some error CGMessages
-
-  Revision 1.47  1998/09/03 17:08:41  pierre
-    * better lines for stabs
-      (no scroll back to if before else part
-      no return to case line at jump outside case)
-    + source lines also if not in order
-
-  Revision 1.46  1998/09/03 16:03:16  florian
-    + rtti generation
-    * init table generation changed
-
-  Revision 1.45  1998/09/01 12:48:03  peter
-    * use pdef^.size instead of orddef^.typ
-
-  Revision 1.44  1998/09/01 09:07:11  peter
-    * m68k fixes, splitted cg68k like cgi386
-
-  Revision 1.43  1998/08/21 08:40:52  pierre
-    * EBX,EDI,ESI saved for CDECL on all i386 targets
-
-  Revision 1.42  1998/08/19 16:07:41  jonas
-    * changed optimizer switches + cleanup of DestroyRefs in daopt386.pas
-
-  Revision 1.41  1998/08/19 00:40:43  peter
-    * small crash prevention
-
-  Revision 1.40  1998/08/17 10:10:06  peter
-    - removed OLDPPU
-
-  Revision 1.39  1998/08/15 16:51:39  peter
-    * save also esi,ebx for cdecl procedures
-
-  Revision 1.38  1998/08/14 18:18:42  peter
-    + dynamic set contruction
-    * smallsets are now working (always longint size)
-
-  Revision 1.37  1998/08/11 00:00:30  peter
-    * fixed dup log
-
-  Revision 1.36  1998/08/10 14:49:52  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.35  1998/08/05 16:00:11  florian
-    * some fixes for ansi strings
-
-  Revision 1.34  1998/07/30 11:18:14  florian
-    + first implementation of try ... except on .. do end;
-    * limitiation of 65535 bytes parameters for cdecl removed
-
-  Revision 1.33  1998/07/27 21:57:12  florian
-    * fix to allow tv like stream registration:
-        @tmenu.load doesn't work if load had parameters or if load was only
-        declared in an anchestor class of tmenu
-
-  Revision 1.32  1998/07/27 11:23:40  florian
-    + procedures with the directive cdecl and with target linux save now
-      the register EDI (like GCC procedures).
-
-  Revision 1.31  1998/07/20 18:40:11  florian
-    * handling of ansi string constants should now work
-
-  Revision 1.30  1998/07/18 22:54:26  florian
-    * some ansi/wide/longstring support fixed:
-       o parameter passing
-       o returning as result from functions
-
-  Revision 1.29  1998/07/06 13:21:13  michael
-  + Fixed Initialization/Finalizarion calls
-
-  Revision 1.28  1998/06/25 08:48:11  florian
-    * first version of rtti support
-
-  Revision 1.27  1998/06/24 14:48:32  peter
-    * ifdef newppu -> ifndef oldppu
-
-  Revision 1.26  1998/06/16 08:56:19  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.25  1998/06/08 13:13:40  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.24  1998/06/07 15:30:23  florian
-    + first working rtti
-    + data init/final. for local variables
-
-  Revision 1.23  1998/06/05 17:49:53  peter
-    * cleanup of cgai386
-
-  Revision 1.22  1998/06/04 09:55:34  pierre
-    * demangled name of procsym reworked to become
-      independant of the mangling scheme
-
-  Revision 1.21  1998/06/03 22:48:51  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.20  1998/05/30 14:31:03  peter
-    + $ASMMODE
-
-  Revision 1.19  1998/05/23 01:21:02  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.18  1998/05/20 09:42:32  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.17  1998/05/11 13:07:53  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.16  1998/05/07 00:17:00  peter
-    * smartlinking for sets
-    + consts labels are now concated/generated in hcodegen
-    * moved some cpu code to cga and some none cpu depended code from cga
-      to tree and hcodegen and cleanup of hcodegen
-    * assembling .. output reduced for smartlinking ;)
-
-  Revision 1.15  1998/05/06 08:38:35  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.14  1998/05/04 17:54:24  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.13  1998/05/01 16:38:43  florian
-    * handling of private and protected fixed
-    + change_keywords_to_tp implemented to remove
-      keywords which aren't supported by tp
-    * break and continue are now symbols of the system unit
-    + widestring, longstring and ansistring type released
-
-  Revision 1.12  1998/05/01 07:43:52  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.11  1998/04/29 13:41:17  peter
-    + assembler functions are not profiled
-
-  Revision 1.10  1998/04/29 10:33:47  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.9  1998/04/21 10:16:46  peter
-    * patches from strasbourg
-    * objects is not used anymore in the fpc compiled version
-
-  Revision 1.8  1998/04/13 08:42:50  florian
-    * call by reference and call by value open arrays fixed
-
-  Revision 1.7  1998/04/09 23:27:26  peter
-    * fixed profiling results
-
-  Revision 1.6  1998/04/09 14:28:03  jonas
-    + basic k6 and 6x86 optimizing support (-O7 and -O8)
-
-  Revision 1.5  1998/04/08 16:58:01  pierre
-    * several bugfixes
-      ADD ADC and AND are also sign extended
-      nasm output OK (program still crashes at end
-      and creates wrong assembler files !!)
-      procsym types sym in tdef removed !!
 }
 }

+ 4 - 97
compiler/cobjects.pas

@@ -2277,7 +2277,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.43  1999-10-26 12:30:41  peter
+  Revision 1.44  1999-11-06 14:34:20  peter
+    * truncated log to 20 revs
+
+  Revision 1.43  1999/10/26 12:30:41  peter
     * const parameter is now checked
     * const parameter is now checked
     * better and generic check if a node can be used for assigning
     * better and generic check if a node can be used for assigning
     * export fixes
     * export fixes
@@ -2353,100 +2356,4 @@ end.
   Revision 1.24  1999/04/14 09:14:47  peter
   Revision 1.24  1999/04/14 09:14:47  peter
     * first things to store the symbol/def number in the ppu
     * first things to store the symbol/def number in the ppu
 
 
-  Revision 1.23  1999/04/08 20:59:39  florian
-    * fixed problem with default properties which are a class
-    * case bug (from the mailing list with -O2) fixed, the
-      distance of the case labels can be greater than the positive
-      range of a longint => it is now a dword for fpc
-
-  Revision 1.22  1999/03/31 13:55:10  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.21  1999/03/19 16:35:29  pierre
-   * Tnamedindexobject done also removed left and right
-
-  Revision 1.20  1999/03/18 20:30:45  peter
-    + .a writer
-
-  Revision 1.19  1999/03/01 13:32:00  pierre
-   * external used before implemented problem fixed
-
-  Revision 1.18  1999/02/24 00:59:13  peter
-    * small updates for ag386bin
-
-  Revision 1.17  1999/01/19 11:00:33  daniel
-  + Tdictionary object:  Tsymtable will become object(TTdictionary) in the
-    future
-  + Tnamed_item object:  Tsym will become object(Tnamed_item) in the future
-
-  Revision 1.16  1998/11/04 10:11:37  peter
-    * ansistring fixes
-
-  Revision 1.15  1998/10/19 18:04:40  peter
-    + tstringcontainer.init_no_doubles
-
-  Revision 1.14  1998/09/18 16:03:37  florian
-    * some changes to compile with Delphi
-
-  Revision 1.13  1998/08/12 19:28:16  peter
-    * better libc support
-
-  Revision 1.12  1998/07/14 14:46:47  peter
-    * released NEWINPUT
-
-  Revision 1.11  1998/07/07 11:19:54  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.10  1998/07/01 15:26:59  peter
-    * better bufferfile.reset error handling
-
-  Revision 1.9  1998/06/03 23:40:37  peter
-    + unlimited file support, release tempclose
-
-  Revision 1.8  1998/05/20 09:42:33  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.7  1998/05/06 18:36:53  peter
-    * tai_section extended with code,data,bss sections and enumerated type
-    * ident 'compiled by FPC' moved to pmodules
-    * small fix for smartlink
-
-  Revision 1.6  1998/05/06 08:38:37  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.5  1998/04/30 15:59:40  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.4  1998/04/29 10:33:50  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.3  1998/04/27 23:10:28  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.2  1998/04/07 11:09:04  peter
-    + filemode is set correct in tbufferedfile.reset
 }
 }

+ 4 - 63
compiler/compiler.pas

@@ -300,7 +300,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.36  1999-10-12 21:20:41  florian
+  Revision 1.37  1999-11-06 14:34:20  peter
+    * truncated log to 20 revs
+
+  Revision 1.36  1999/10/12 21:20:41  florian
     * new codegenerator compiles again
     * new codegenerator compiles again
 
 
   Revision 1.35  1999/09/28 19:48:45  florian
   Revision 1.35  1999/09/28 19:48:45  florian
@@ -371,66 +374,4 @@ end.
     + BrowserCol for browser info in TCollections
     + BrowserCol for browser info in TCollections
     * released all other UseBrowser
     * released all other UseBrowser
 
 
-  Revision 1.16  1998/12/15 10:23:23  peter
-    + -iSO, -iSP, -iTO, -iTP
-
-  Revision 1.15  1998/10/29 11:35:40  florian
-    * some dll support for win32
-    * fixed assembler writing for PalmOS
-
-  Revision 1.14  1998/10/26 22:58:17  florian
-    * new introduded problem with classes fix, the parent class wasn't set
-      correct, if the class was defined forward before
-
-  Revision 1.13  1998/10/26 17:15:17  pierre
-    + added two level of longjump to
-      allow clean freeing of used memory on errors
-
-  Revision 1.12  1998/10/09 16:36:02  pierre
-    * some memory leaks specific to usebrowser define fixed
-    * removed tmodule.implsymtable (was like tmodule.localsymtable)
-
-  Revision 1.11  1998/10/08 23:28:51  peter
-    * -vu shows unit info, -vt shows tried/used files
-
-  Revision 1.10  1998/10/08 17:17:18  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.9  1998/10/06 17:16:46  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.8  1998/09/01 09:00:27  peter
-    - removed tempheap creation/restore
-
-  Revision 1.7  1998/09/01 07:54:17  pierre
-    * UseBrowser a little updated (might still be buggy !!)
-    * bug in psub.pas in function specifier removed
-    * stdcall allowed in interface and in implementation
-      (FPC will not yet complain if it is missing in either part
-      because stdcall is only a dummy !!)
-
-  Revision 1.6  1998/08/29 13:51:10  peter
-    * moved get_exepath to globals
-    + date_string const with the current date for 0.99.7+
-
-  Revision 1.5  1998/08/11 21:38:24  peter
-    + createheap/restoreheap procedures (only tp7 rm currently) and support
-      for tp7 dpmi
-
-  Revision 1.4  1998/08/11 14:09:06  peter
-    * fixed some messages and smaller msgtxt.inc
-
-  Revision 1.3  1998/08/11 00:01:20  peter
-    * -vu displays now all searchpaths
-
-  Revision 1.2  1998/08/10 14:49:56  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.1  1998/08/10 10:18:24  peter
-    + Compiler,Comphook unit which are the new interface units to the
-      compiler
-
 }
 }

+ 4 - 78
compiler/cpuasm.pas

@@ -1528,7 +1528,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.4  1999-11-05 16:01:46  jonas
+  Revision 1.5  1999-11-06 14:34:20  peter
+    * truncated log to 20 revs
+
+  Revision 1.4  1999/11/05 16:01:46  jonas
     + first implementation of choosing least used register for alignment code
     + first implementation of choosing least used register for alignment code
        (not yet working, between ifdef alignreg)
        (not yet working, between ifdef alignreg)
 
 
@@ -1599,81 +1602,4 @@ end.
     * removed R_DEFAULT_SEG
     * removed R_DEFAULT_SEG
     * uniform float names
     * uniform float names
 
 
-  Revision 1.5  1999/05/11 16:29:59  peter
-    * more noag386bin defines, so tp7 can compile at least
-
-  Revision 1.4  1999/05/05 22:21:51  peter
-    * updated messages
-
-  Revision 1.3  1999/05/02 22:41:53  peter
-    * moved section names to systems
-    * fixed nasm,intel writer
-
-  Revision 1.2  1999/05/02 21:33:52  florian
-    * several bugs regarding -Or fixed
-
-  Revision 1.1  1999/05/01 13:24:23  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.18  1999/04/16 11:49:51  peter
-    + tempalloc
-    + -at to show temp alloc info in .s file
-
-  Revision 1.17  1999/04/16 09:35:11  pierre
-   + tai constructors needed for SHRD and IMUL added
-
-  Revision 1.16  1999/04/01 21:58:21  peter
-    * small fixes for proces_ea
-
-  Revision 1.15  1999/03/31 13:55:32  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.14  1999/03/29 16:05:49  peter
-    * optimizer working for ag386bin
-
-  Revision 1.13  1999/03/26 00:01:11  peter
-    * first things for optimizer (compiles but cycle crashes)
-
-  Revision 1.12  1999/03/12 00:20:04  pierre
-   + win32 output working !
-
-  Revision 1.11  1999/03/10 13:41:08  pierre
-   + partial implementation for win32 !
-     winhello works but pp still does not !
-
-  Revision 1.10  1999/03/09 19:25:24  peter
-    * only pass jmp's a second time in pass1
-
-  Revision 1.9  1999/03/08 14:51:06  peter
-    + smartlinking for ag386bin
-
-  Revision 1.8  1999/03/06 17:24:19  peter
-    * rewritten intel parser a lot, especially reference reading
-    * size checking added for asm parsers
-
-  Revision 1.7  1999/03/02 02:56:19  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.6  1999/03/01 15:46:21  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
-
-  Revision 1.5  1999/02/26 00:48:28  peter
-    * assembler writers fixed for ag386bin
-
-  Revision 1.4  1999/02/25 21:03:02  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.3  1999/02/22 02:44:17  peter
-    * ag386bin doesn't use i386.pas anymore
-
-  Revision 1.2  1999/02/22 02:16:02  peter
-    * updates for ag386bin
-
-  Revision 1.1  1999/02/16 17:59:37  peter
-    + initial files
-
 }
 }

+ 4 - 66
compiler/cpubase.pas

@@ -889,7 +889,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.15  1999-10-27 16:11:28  peter
+  Revision 1.16  1999-11-06 14:34:20  peter
+    * truncated log to 20 revs
+
+  Revision 1.15  1999/10/27 16:11:28  peter
     * insns.dat is used to generate all i386*.inc files
     * insns.dat is used to generate all i386*.inc files
 
 
   Revision 1.14  1999/10/14 14:57:51  florian
   Revision 1.14  1999/10/14 14:57:51  florian
@@ -958,69 +961,4 @@ end.
   Revision 1.6  1999/06/06 15:53:15  peter
   Revision 1.6  1999/06/06 15:53:15  peter
     * suffix adding can be turned of for some tasmops in att_nosuffix array
     * suffix adding can be turned of for some tasmops in att_nosuffix array
 
 
-  Revision 1.5  1999/05/27 19:44:34  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.4  1999/05/17 14:33:50  pierre
-   uses heaptrc need for extrainfo with heaptrc
-
-  Revision 1.3  1999/05/12 00:19:51  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.2  1999/05/11 16:30:00  peter
-    * more noag386bin defines, so tp7 can compile at least
-
-  Revision 1.1  1999/05/01 13:24:23  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.13  1999/04/14 09:07:43  peter
-    * asm reader improvements
-
-  Revision 1.12  1999/04/10 16:14:09  peter
-    * fixed optimizer
-
-  Revision 1.11  1999/03/31 13:55:33  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.10  1999/03/29 16:05:50  peter
-    * optimizer working for ag386bin
-
-  Revision 1.9  1999/03/26 00:01:14  peter
-    * first things for optimizer (compiles but cycle crashes)
-
-  Revision 1.8  1999/03/06 17:24:21  peter
-    * rewritten intel parser a lot, especially reference reading
-    * size checking added for asm parsers
-
-  Revision 1.7  1999/03/02 02:56:20  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.6  1999/03/01 15:46:22  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
-
-  Revision 1.5  1999/02/26 00:48:29  peter
-    * assembler writers fixed for ag386bin
-
-  Revision 1.4  1999/02/25 21:03:04  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.3  1999/02/22 02:44:18  peter
-    * ag386bin doesn't use i386.pas anymore
-
-  Revision 1.2  1999/02/22 02:16:03  peter
-    * updates for ag386bin
-
-  Revision 1.1  1999/02/16 17:59:38  peter
-    + initial files
-
 }
 }

+ 6 - 3
compiler/cresstr.pas

@@ -119,7 +119,7 @@ Var
  l1 : pasmlabel;
  l1 : pasmlabel;
  s : pchar;
  s : pchar;
  l : longint;
  l : longint;
-  
+
 begin
 begin
  With P^ Do
  With P^ Do
    begin
    begin
@@ -308,7 +308,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.14  1999-08-27 15:55:36  michael
+  Revision 1.15  1999-11-06 14:34:20  peter
+    * truncated log to 20 revs
+
+  Revision 1.14  1999/08/27 15:55:36  michael
   * Fixed small bug: next field in resourcelist was not initialized
   * Fixed small bug: next field in resourcelist was not initialized
 
 
   Revision 1.13  1999/08/26 20:24:39  michael
   Revision 1.13  1999/08/26 20:24:39  michael
@@ -350,4 +353,4 @@ end.
   Revision 1.1  1999/07/22 09:34:04  florian
   Revision 1.1  1999/07/22 09:34:04  florian
     + initial revision
     + initial revision
 
 
-}
+}

+ 4 - 44
compiler/csopt386.pas

@@ -681,7 +681,10 @@ End.
 
 
 {
 {
  $Log$
  $Log$
- Revision 1.29  1999-11-05 16:01:46  jonas
+ Revision 1.30  1999-11-06 14:34:20  peter
+   * truncated log to 20 revs
+
+ Revision 1.29  1999/11/05 16:01:46  jonas
    + first implementation of choosing least used register for alignment code
    + first implementation of choosing least used register for alignment code
       (not yet working, between ifdef alignreg)
       (not yet working, between ifdef alignreg)
 
 
@@ -758,47 +761,4 @@ End.
  Revision 1.12  1998/10/20 09:32:54  peter
  Revision 1.12  1998/10/20 09:32:54  peter
    * removed some unused vars
    * removed some unused vars
 
 
- Revision 1.11  1998/10/07 16:24:52  jonas
-   * changed state to WState (WriteState), added RState for future use in
-      instruction scheduling
-
- Revision 1.10  1998/10/02 17:29:23  jonas
-   * much better interregister CSE
-
- Revision 1.9  1998/10/01 20:21:49  jonas
-   * inter-register CSE, still requires some tweaks (peepholeoptpass2, better  RegAlloc)
-
- Revision 1.8  1998/09/21 08:45:09  pierre
-   + added vmt_offset in tobjectdef.write for fututre use
-     (first steps to have objects without vmt if no virtual !!)
-   + added fpu_used field for tabstractprocdef  :
-     sets this level to 2 if the functions return with value in FPU
-     (is then set to correct value at parsing of implementation)
-     THIS MIGHT refuse some code with FPU expression too complex
-     that were accepted before and even in some cases
-     that don't overflow in fact
-     ( like if f : float; is a forward that finally in implementation
-      only uses one fpu register !!)
-     Nevertheless I think that it will improve security on
-     FPU operations !!
-   * most other changes only for UseBrowser code
-     (added symtable references for record and objects)
-     local switch for refs to args and local of each function
-     (static symtable still missing)
-     UseBrowser still not stable and probably broken by
-     the definition hash array !!
-
- Revision 1.7  1998/09/20 17:12:35  jonas
- * small fix for uncertain optimizations & more cleaning up
-
- Revision 1.5  1998/09/16 17:59:59  jonas
-   * optimizer now completely dependant on GetNext/GetLast instruction, works again with -dRegAlloc
-
- Revision 1.4  1998/08/06 19:40:27  jonas
-   * removed $ before and after Log in comment
-
- Revision 1.3  1998/08/05 16:00:12  florian
-   * some fixes for ansi strings
-   * log to Log changed
-
 }
 }

+ 4 - 155
compiler/daopt386.pas

@@ -1879,7 +1879,10 @@ End.
 
 
 {
 {
  $Log$
  $Log$
- Revision 1.66  1999-11-05 16:01:46  jonas
+ Revision 1.67  1999-11-06 14:34:20  peter
+   * truncated log to 20 revs
+
+ Revision 1.66  1999/11/05 16:01:46  jonas
    + first implementation of choosing least used register for alignment code
    + first implementation of choosing least used register for alignment code
       (not yet working, between ifdef alignreg)
       (not yet working, between ifdef alignreg)
 
 
@@ -1954,158 +1957,4 @@ End.
    * seperate OPTimizer INFO pointer field in tai object
    * seperate OPTimizer INFO pointer field in tai object
    * fix to GetLastInstruction that sometimes caused a crash
    * fix to GetLastInstruction that sometimes caused a crash
 
 
- Revision 1.45  1999/05/01 13:48:37  peter
-   * merged nasm compiler
-
- Revision 1.6  1999/04/18 17:57:21  jonas
-   * fix for crash when the first instruction of a sequence that gets
-     optimized is removed (this situation can't occur aymore now)
-
- Revision 1.5  1999/04/16 11:49:50  peter
-   + tempalloc
-   + -at to show temp alloc info in .s file
-
- Revision 1.4  1999/04/14 09:07:42  peter
-   * asm reader improvements
-
- Revision 1.3  1999/03/31 13:55:29  peter
-   * assembler inlining working for ag386bin
-
- Revision 1.2  1999/03/29 16:05:46  peter
-   * optimizer working for ag386bin
-
- Revision 1.1  1999/03/26 00:01:10  peter
-   * first things for optimizer (compiles but cycle crashes)
-
- Revision 1.39  1999/02/26 00:48:18  peter
-   * assembler writers fixed for ag386bin
-
- Revision 1.38  1999/02/25 21:02:34  peter
-   * ag386bin updates
-   + coff writer
-
- Revision 1.37  1999/02/22 02:15:20  peter
-   * updates for ag386bin
-
- Revision 1.36  1999/01/20 17:41:26  jonas
-   * small bugfix (memory corruption could occur when certain fpu instructions
-     were encountered)
-
- Revision 1.35  1999/01/08 12:39:22  florian
-   Changes of Alexander Stohr integrated:
-     + added KNI opcodes
-     + added KNI registers
-     + added 3DNow! opcodes
-     + added 64 bit and 128 bit register flags
-     * translated a few comments into english
-
- Revision 1.34  1998/12/29 18:48:19  jonas
-   + optimize pascal code surrounding assembler blocks
-
- Revision 1.33  1998/12/17 16:37:38  jonas
-   + extra checks in RegsEquivalent so some more optimizations can be done (which
-     where disabled by the second fix from revision 1.22)
-
- Revision 1.32  1998/12/15 19:33:58  jonas
-   * uncommented OpsEqual & added to interface because popt386 uses it now
-
- Revision 1.31  1998/12/11 00:03:13  peter
-   + globtype,tokens,version unit splitted from globals
-
- Revision 1.30  1998/12/02 16:23:39  jonas
-   * changed "if longintvar in set" to case or "if () or () .." statements
-   * tree.pas: changed inlinenumber (and associated constructor/vars) to a byte
-
- Revision 1.29  1998/11/26 21:45:31  jonas
-   - removed A_CLTD opcode (use A_CDQ instead)
-   * changed cbw, cwde and cwd to cbtw, cwtl and cwtd in att_.oper[1]str array
-   * in daopt386: adapted InsProp array to reflect changes + fixed line too long
-
- Revision 1.27  1998/11/24 19:47:22  jonas
-   * fixed problems posible with 3 operand instructions
-
- Revision 1.26  1998/11/24 12:50:09  peter
-   * fixed crash
-
- Revision 1.25  1998/11/18 17:58:22  jonas
-   + gathering of register reading data, nowhere used yet (necessary for instruction scheduling)
-
- Revision 1.24  1998/11/13 10:13:44  peter
-   + cpuid,emms support for asm readers
-
- Revision 1.23  1998/11/09 19:40:46  jonas
-   * fixed comments from last commit (apparently there's still a 255 char limit :( )
-
- Revision 1.22  1998/11/09 19:33:40  jonas
-   * changed specific bugfix (which was actually wrong implemented, but
-     did the right thing in most cases nevertheless) to general bugfix
-   * fixed bug that caused
-     mov (ebp), edx                                    mov (ebp), edx
-     mov (edx), edx                                    mov (edx), edx
-     ...                   being changed to            ...
-     mov (ebp), edx                                    mov edx, eax
-     mov (eax), eax
-     but this disabled another small correct optimization...
- Revision 1.21  1998/11/02 23:17:49  jonas
-   * fixed bug shown in sortbug program from fpc-devel list
-
- Revision 1.20  1998/10/22 13:24:51  jonas
-   * changed TRegSet to a small set
-
- Revision 1.19  1998/10/20 09:29:24  peter
-   * bugfix so that code like
-      movl  48(%esi),%esi                            movl  48(%esi),%esi
-      pushl %esi            doesn't get changed to   pushl %esi
-      movl 48(%esi),%edi                             movl  %esi,%edi
-
- Revision 1.18  1998/10/07 16:27:02  jonas
-   * changed state to WState (WriteState), added RState for future use in
-      instruction scheduling
-   * RegAlloc data from the CG is now completely being patched and corrected (I
-      think)
-
- Revision 1.17  1998/10/02 17:30:20  jonas
-   * small patches to regdealloc data
-
- Revision 1.16  1998/10/01 20:21:47  jonas
-   * inter-register CSE, still requires some tweaks (peepholeoptpass2, better  RegAlloc)
-
- Revision 1.15  1998/09/20 18:00:20  florian
-   * small compiling problems fixed
-
- Revision 1.14  1998/09/20 17:12:36  jonas
-   * small fix for uncertain optimizations & more cleaning up
-
- Revision 1.12  1998/09/16 18:00:01  jonas
-   * optimizer now completely dependant on GetNext/GetLast instruction, works again with -dRegAlloc
-
- Revision 1.11  1998/09/15 14:05:27  jonas
-   * fixed optimizer incompatibilities with freelabel code in psub
-
- Revision 1.10  1998/09/09 15:33:58  peter
-   * removed warnings
-
- Revision 1.9  1998/09/03 16:24:51  florian
-   * bug of type conversation from dword to real fixed
-   * bug fix of Jonas applied
-
- Revision 1.8  1998/08/28 10:56:59  peter
-   * removed warnings
-
- Revision 1.7  1998/08/19 16:07:44  jonas
-   * changed optimizer switches + cleanup of DestroyRefs in daopt386.pas
-
- Revision 1.6  1998/08/10 14:49:57  peter
-   + localswitches, moduleswitches, globalswitches splitting
-
- Revision 1.5  1998/08/09 13:56:24  jonas
-   * small bugfix for uncertain optimizations in DestroyRefs
-
- Revision 1.4  1998/08/06 19:40:25  jonas
-   * removed $ before and after Log in comment
-
- Revision 1.3  1998/08/05 16:00:14  florian
-   * some fixes for ansi strings
-   * log to Log changed
-
 }
 }

+ 5 - 2
compiler/export.pas

@@ -193,7 +193,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.7  1999-10-21 14:29:34  peter
+  Revision 1.8  1999-11-06 14:34:20  peter
+    * truncated log to 20 revs
+
+  Revision 1.7  1999/10/21 14:29:34  peter
     * redesigned linker object
     * redesigned linker object
     + library support for linux (only procedures can be exported)
     + library support for linux (only procedures can be exported)
 
 
@@ -222,4 +225,4 @@ end.
   Revision 1.1  1998/10/27 10:22:34  florian
   Revision 1.1  1998/10/27 10:22:34  florian
     + First things for win32 export sections
     + First things for win32 export sections
 
 
-}
+}

+ 4 - 367
compiler/files.pas

@@ -1344,7 +1344,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.107  1999-11-04 23:13:25  peter
+  Revision 1.108  1999-11-06 14:34:20  peter
+    * truncated log to 20 revs
+
+  Revision 1.107  1999/11/04 23:13:25  peter
     * moved unit alias support into ifdef
     * moved unit alias support into ifdef
 
 
   Revision 1.106  1999/11/04 10:54:02  peter
   Revision 1.106  1999/11/04 10:54:02  peter
@@ -1412,370 +1415,4 @@ end.
   Revision 1.88  1999/03/25 16:55:29  peter
   Revision 1.88  1999/03/25 16:55:29  peter
     + unitpath,librarypath,includepath,objectpath directives
     + unitpath,librarypath,includepath,objectpath directives
 
 
-  Revision 1.87  1999/02/16 00:48:23  peter
-    * save in the ppu if linked with obj file instead of using the
-      library flag, so the .inc files are also checked
-
-  Revision 1.86  1999/02/05 08:54:24  pierre
-    + linkofiles splitted inot linkofiles and linkunitfiles
-      because linkofiles must be stored with directory
-      to enabled linking of different objects with same name
-      in a different directory
-
-  Revision 1.85  1999/01/14 21:47:11  peter
-    * status.currentmodule is now also updated
-    + status.currentsourcepath
-
-  Revision 1.84  1999/01/14 11:38:39  daniel
-  * Exe name derived from target_info instead of target_os
-
-  Revision 1.83  1999/01/13 15:02:00  daniel
-  * Tinputfile.readbuf eof bugfix
-
-  Revision 1.82  1999/01/12 14:25:26  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.81  1998/12/28 23:26:14  peter
-    + resource file handling ($R directive) for Win32
-
-  Revision 1.80  1998/12/16 00:27:19  peter
-    * removed some obsolete version checks
-
-  Revision 1.79  1998/12/11 00:03:14  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.78  1998/12/04 10:18:07  florian
-    * some stuff for procedures of object added
-    * bug with overridden virtual constructors fixed (reported by Italo Gomes)
-
-  Revision 1.77  1998/12/02 16:23:37  jonas
-    * changed "if longintvar in set" to case or "if () or () .." statements
-    * tree.pas: changed inlinenumber (and associated constructor/vars) to a byte
-
-  Revision 1.76  1998/12/01 12:51:19  peter
-    * fixed placing of ppas.sh and link.res when using -FE
-
-  Revision 1.75  1998/11/16 15:41:40  peter
-    * tp7 didn't like my ifopt H+ :(
-
-  Revision 1.74  1998/11/16 12:18:01  peter
-    * H+ fixes
-
-  Revision 1.73  1998/11/16 11:28:58  pierre
-    * stackcheck removed for i386_win32
-    * exportlist does not crash at least !!
-      (was need for tests dir !)z
-
-  Revision 1.72  1998/11/15 16:32:35  florian
-    * some stuff of Pavel implement (win32 dll creation)
-    * bug with ansistring function results fixed
-
-  Revision 1.71  1998/11/06 09:45:40  pierre
-    * bug on errors (file used after dispose !) fixed
-
-  Revision 1.70  1998/11/03 11:33:14  peter
-    + search_unit arg to only search for sources
-
-  Revision 1.69  1998/10/29 11:35:44  florian
-    * some dll support for win32
-    * fixed assembler writing for PalmOS
-
-  Revision 1.68  1998/10/27 10:22:34  florian
-    + First things for win32 export sections
-
-  Revision 1.67  1998/10/26 22:23:29  peter
-    + fixpath() has an extra option to allow a ./ as path
-
-  Revision 1.66  1998/10/19 18:07:11  peter
-    + external dll_name name func support for linux
-
-  Revision 1.65  1998/10/15 12:22:25  pierre
-    * close include files immediately after end reading
-      instead of waiting until unit compilation ended !
-
-  Revision 1.64  1998/10/14 13:38:19  peter
-    * fixed path with staticlib/objects in ppufiles
-
-  Revision 1.63  1998/10/14 11:02:49  daniel
-  * Stupid typo fixed.
-
-  Revision 1.62  1998/10/14 10:59:37  daniel
-  * Staticlibfilename now doesn't include path.
-
-  Revision 1.61  1998/10/14 10:57:25  daniel
-  * Dirstr, namestr, extstr.
-  * $V+ to prevent Peter from forgetting this.
-  * OS/2 compiler uses 8.3 filenames to support running the compiler on an old
-    DOS FAT partition.
-
-  Revision 1.60  1998/10/14 10:45:07  pierre
-    * ppu problems for m68k fixed (at least in cross compiling)
-    * one last memory leak for sysamiga fixed
-    * the amiga RTL compiles now completely !!
-
-  Revision 1.59  1998/10/13 14:01:07  peter
-    * fixed -al
-
-  Revision 1.58  1998/10/12 11:59:00  peter
-    + show name and date of .o and .s files which the compiler checks
-
-  Revision 1.57  1998/10/09 16:36:03  pierre
-    * some memory leaks specific to usebrowser define fixed
-    * removed tmodule.implsymtable (was like tmodule.localsymtable)
-
-  Revision 1.56  1998/10/09 08:56:26  pierre
-    * several memory leaks fixed
-
-  Revision 1.55  1998/10/08 23:28:54  peter
-    * -vu shows unit info, -vt shows tried/used files
-
-  Revision 1.54  1998/10/08 17:17:19  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.53  1998/10/08 13:48:43  peter
-    * fixed memory leaks for do nothing source
-    * fixed unit interdependency
-
-  Revision 1.52  1998/10/06 22:09:48  peter
-    * fixed for compiling with 0.99.8 due circular units
-
-  Revision 1.51  1998/10/06 17:16:47  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.50  1998/09/30 16:43:34  peter
-    * fixed unit interdependency with circular uses
-
-  Revision 1.49  1998/09/28 16:57:20  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.48  1998/09/24 23:46:34  peter
-    + outputdir support
-
-  Revision 1.47  1998/09/22 17:13:43  pierre
-    + browsing updated and developed
-      records and objects fields are also stored
-
-  Revision 1.46  1998/09/21 08:45:10  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.45  1998/09/18 09:58:51  peter
-    * -s doesn't require the .o to be available, this allows compiling of
-      everything on other platforms (profiling the windows.pp loading ;)
-
-  Revision 1.44  1998/09/10 13:51:32  peter
-    * tp compiler also uses 'as' as asmprefix
-
-  Revision 1.43  1998/09/03 17:08:45  pierre
-    * better lines for stabs
-      (no scroll back to if before else part
-      no return to case line at jump outside case)
-    + source lines also if not in order
-
-  Revision 1.42  1998/09/03 11:24:00  peter
-    * moved more inputfile things from tscannerfile to tinputfile
-    * changed ifdef Sourceline to cs_asm_source
-
-  Revision 1.41  1998/08/26 15:35:30  peter
-    * fixed scannerfiles for macros
-    + $I %<environment>%
-
-  Revision 1.40  1998/08/26 10:08:48  peter
-    * fixed problem with libprefix at the wrong place
-    * fixed lib generation with smartlinking and no -CS used
-
-  Revision 1.39  1998/08/25 16:44:16  pierre
-    * openppu was true even if the object file is missing
-      this lead to trying to open a filename without extension
-      and prevented the 'make cycle' to work for win32
-
-  Revision 1.38  1998/08/19 10:06:12  peter
-    * fixed filenames and removedir which supports slash at the end
-
-  Revision 1.37  1998/08/18 20:52:19  peter
-    * renamed in_main to in_global which is more logical
-
-  Revision 1.36  1998/08/17 10:10:07  peter
-    - removed OLDPPU
-
-  Revision 1.35  1998/08/17 09:17:44  peter
-    * static/shared linking updates
-
-  Revision 1.34  1998/08/14 21:56:31  peter
-    * setting the outputfile using -o works now to create static libs
-
-  Revision 1.33  1998/08/11 14:09:08  peter
-    * fixed some messages and smaller msgtxt.inc
-
-  Revision 1.32  1998/08/10 14:49:58  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.31  1998/07/14 14:46:48  peter
-    * released NEWINPUT
-
-  Revision 1.30  1998/07/07 11:19:55  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.29  1998/06/25 10:51:00  pierre
-    * removed a remaining ifndef NEWPPU
-      replaced by ifdef OLDPPU
-    * added uf_finalize to ppu unit
-
-  Revision 1.28  1998/06/25 08:48:12  florian
-    * first version of rtti support
-
-  Revision 1.27  1998/06/24 14:48:34  peter
-    * ifdef newppu -> ifndef oldppu
-
-  Revision 1.26  1998/06/17 14:36:19  peter
-    * forgot an $ifndef OLDPPU :(
-
-  Revision 1.25  1998/06/17 14:10:11  peter
-    * small os2 fixes
-    * fixed interdependent units with newppu (remake3 under linux works now)
-
-  Revision 1.24  1998/06/16 08:56:20  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.23  1998/06/15 14:44:36  daniel
-  * BP updates.
-
-  Revision 1.22  1998/06/14 18:25:41  peter
-    * small fix with crc in newppu
-
-  Revision 1.21  1998/06/13 00:10:05  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.20  1998/06/12 14:50:48  peter
-    * removed the tree dependency to types.pas
-    * long_fil.pas support (not fully tested yet)
-
-  Revision 1.19  1998/06/12 10:32:26  pierre
-    * column problem hopefully solved
-    + C vars declaration changed
-
-  Revision 1.18  1998/06/11 13:58:07  peter
-    * small fix to let newppu compile
-
-  Revision 1.17  1998/06/09 16:01:40  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.16  1998/06/04 10:42:19  pierre
-    * small bug fix in load_ppu or openppu
-
-  Revision 1.15  1998/05/28 14:37:53  peter
-    * default programname is PROGRAM (like TP7) to avoid dup id's
-
-  Revision 1.14  1998/05/27 19:45:02  peter
-    * symtable.pas splitted into includefiles
-    * symtable adapted for $ifndef OLDPPU
-
-  Revision 1.13  1998/05/23 01:21:05  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.12  1998/05/20 09:42:33  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.11  1998/05/12 10:46:59  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.10  1998/05/11 13:07:53  peter
-    + $ifndef OLDPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.9  1998/05/06 15:04:20  pierre
-    + when trying to find source files of a ppufile
-      check the includepathlist for included files
-      the main file must still be in the same directory
-
-  Revision 1.8  1998/05/04 17:54:25  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.7  1998/05/01 16:38:44  florian
-    * handling of private and protected fixed
-    + change_keywords_to_tp implemented to remove
-      keywords which aren't supported by tp
-    * break and continue are now symbols of the system unit
-    + widestring, longstring and ansistring type released
-
-  Revision 1.6  1998/05/01 07:43:53  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.5  1998/04/30 15:59:40  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.4  1998/04/29 10:33:52  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.3  1998/04/27 23:10:28  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.2  1998/04/21 10:16:47  peter
-    * patches from strasbourg
-    * objects is not used anymore in the fpc compiled version
 }
 }

+ 4 - 496
compiler/globals.pas

@@ -1315,7 +1315,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.28  1999-11-04 10:55:31  peter
+  Revision 1.29  1999-11-06 14:34:20  peter
+    * truncated log to 20 revs
+
+  Revision 1.28  1999/11/04 10:55:31  peter
     * TSearchPathString for the string type of the searchpaths, which is
     * TSearchPathString for the string type of the searchpaths, which is
       ansistring under FPC/Delphi
       ansistring under FPC/Delphi
 
 
@@ -1397,500 +1400,5 @@ end.
   Revision 1.8.2.1  1999/07/07 07:53:21  michael
   Revision 1.8.2.1  1999/07/07 07:53:21  michael
   + Merged patches from florian
   + Merged patches from florian
 
 
-  Revision 1.10  1999/07/06 21:48:16  florian
-    * a lot bug fixes:
-       - po_external isn't any longer necessary for procedure compatibility
-       - m_tp_procvar is in -Sd now available
-       - error messages of procedure variables improved
-       - return values with init./finalization fixed
-       - data types with init./finalization aren't any longer allowed in variant
-         record
-
-  Revision 1.9  1999/07/03 00:29:48  peter
-    * new link writing to the ppu, one .ppu is needed for all link types,
-      static (.o) is now always created also when smartlinking is used
-
-  Revision 1.8  1999/05/27 19:44:29  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.7  1999/05/13 21:59:26  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.6  1999/05/05 10:05:50  florian
-    * a delphi compiled compiler recompiles ppc
-
-  Revision 1.5  1999/05/04 21:44:43  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.4  1999/04/26 13:31:32  peter
-    * release storenumber,double_checksum
-
-  Revision 1.3  1999/04/21 14:12:55  peter
-    * default asm changed to att
-
-  Revision 1.2  1999/04/16 09:56:05  pierre
-   * unused local var commented
-
-  Revision 1.1  1999/04/08 09:14:46  michael
-  + Re-added;
-
-  Revision 1.119  1999/04/07 14:15:53  pierre
-   * assigned test for FPC removed, problems with stack variables
-
-  Revision 1.118  1999/03/17 22:23:17  florian
-    * a FPC compiled compiler checks now also in debug mode in assigned
-      if a pointer points to the heap
-    * when a symtable is loaded, there is no need to check for duplicate
-      symbols. This leads to crashes because defowner isn't assigned
-      in this case
-
-  Revision 1.117  1999/03/04 13:55:42  pierre
-    * some m68k fixes (still not compilable !)
-    * new(tobj) does not give warning if tobj has no VMT !
-
-  Revision 1.116  1999/03/02 18:20:09  peter
-    * fixed compareansistring which gave always -1 or 1 and never 0 :)
-
-  Revision 1.115  1999/03/01 15:43:47  peter
-    * synchronize also the objfile for ag386bin
-
-  Revision 1.114  1999/02/25 21:02:36  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.113  1999/02/22 13:06:50  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.111  1999/02/11 09:46:22  pierre
-    * fix for normal method calls inside static methods :
-      WARNING there were both parser and codegen errors !!
-      added static_call boolean to calln tree
-
-  Revision 1.110  1999/01/27 13:05:42  pierre
-   * give include file name on error
-
-  Revision 1.109  1999/01/22 16:56:50  pierre
-   * findclose problem fixed
-
-  Revision 1.108  1999/01/22 10:08:19  daniel
-  * Findclose is removed for go32v1 and go32v2 platforms, because this is
-    TP incompatible. It is now only called for Linux and Win32.
-
-  Revision 1.107  1999/01/12 14:25:27  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.106  1999/01/05 08:19:57  florian
-    * mainly problem with invalid case ranges fixed (reported by Jonas)
-
-  Revision 1.105  1998/12/28 23:26:16  peter
-    + resource file handling ($R directive) for Win32
-
-  Revision 1.104  1998/12/23 22:49:42  peter
-    * forgot one conflict :(
-
-  Revision 1.103  1998/12/23 22:48:41  peter
-    * fixed findclose problem
-
-  Revision 1.102  1998/12/23 14:26:30  jonas
-    * patch from Peter: remove FindClose call in FileExists (caused error under Dos
-      when opening the ppc386.cfg file)
-
-  Revision 1.101  1998/12/23 14:02:00  peter
-    * daniels patches against the latest versions
-
-  Revision 1.99  1998/12/19 00:23:47  florian
-    * ansistring memory leaks fixed
-
-  Revision 1.98  1998/12/15 10:23:24  peter
-    + -iSO, -iSP, -iTO, -iTP
-
-  Revision 1.97  1998/12/11 00:03:17  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.96  1998/12/08 10:18:06  peter
-    + -gh for heaptrc unit
-
-  Revision 1.95  1998/12/03 10:17:30  peter
-    * target_os.use_bound_instruction boolean
-
-  Revision 1.94  1998/11/30 13:26:22  pierre
-    * the code for ordering the exported procs/vars was buggy
-    + added -WB to force binding (Ozerski way of creating DLL)
-      this is off by default as direct writing of .edata section seems
-      OK
-
-  Revision 1.93  1998/11/30 09:43:10  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.92  1998/11/27 14:50:37  peter
-    + open strings, $P switch support
-
-  Revision 1.91  1998/11/26 21:33:08  peter
-    * rangecheck updates
-
-  Revision 1.90  1998/11/24 17:03:23  peter
-    * removed obsolete version.inc
-
-  Revision 1.89  1998/11/16 15:41:41  peter
-    * tp7 didn't like my ifopt H+ :(
-
-  Revision 1.88  1998/11/16 10:17:07  peter
-    * fixed for H+ compilation
-
-  Revision 1.87  1998/11/15 16:32:36  florian
-    * some stuff of Pavel implement (win32 dll creation)
-    * bug with ansistring function results fixed
-
-  Revision 1.86  1998/11/05 12:02:43  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.85  1998/10/26 22:23:30  peter
-    + fixpath() has an extra option to allow a ./ as path
-
-  Revision 1.84  1998/10/25 23:30:15  peter
-    * valint fix for tp7 to overcome overflow
-
-  Revision 1.83  1998/10/22 17:54:02  florian
-    + switch $APPTYPE for win32 added
-
-  Revision 1.82  1998/10/22 11:56:44  pierre
-    * FixPath handling of c: corrected
-
-  Revision 1.81  1998/10/19 15:41:00  peter
-    * better splitname to support glib-1.1.dll alike names
-
-  Revision 1.80  1998/10/16 13:37:17  florian
-    + switch -FD added to specify the path for utilities
-
-  Revision 1.79  1998/10/16 08:51:46  peter
-    + target_os.stackalignment
-    + stack can be aligned at 2 or 4 byte boundaries
-
-  Revision 1.78  1998/10/14 13:38:21  peter
-    * fixed path with staticlib/objects in ppufiles
-
-  Revision 1.77  1998/10/13 14:01:09  peter
-    * fixed -al
-
-  Revision 1.76  1998/10/13 13:10:15  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.75  1998/10/13 08:19:32  pierre
-    + source_os is now set correctly for cross-processor compilers
-      (tos contains all target_infos and
-       we use CPU86 and CPU68 conditionals to
-       get the source operating system
-       this only works if you do not undefine
-       the source target  !!)
-    * several cg68k memory leaks fixed
-    + started to change the code so that it should be possible to have
-      a complete compiler (both for m68k and i386 !!)
-
-  Revision 1.74  1998/10/12 10:28:29  florian
-    + auto dereferencing of pointers to structured types in delphi mode
-
-  Revision 1.73  1998/10/12 09:49:56  florian
-    + support of <procedure var type>:=<pointer> in delphi mode added
-
-  Revision 1.72  1998/10/06 17:16:48  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.71  1998/09/30 19:53:54  michael
-  + Upgraded to version 0.99.9
-
-  Revision 1.70  1998/09/29 15:23:03  peter
-    * remove also the end files for smartlinking
-
-  Revision 1.69  1998/09/26 17:45:28  peter
-    + idtoken and only one token table
-
-  Revision 1.68  1998/09/24 23:49:04  peter
-    + aktmodeswitches
-
-  Revision 1.67  1998/09/22 17:13:46  pierre
-    + browsing updated and developed
-      records and objects fields are also stored
-
-  Revision 1.66  1998/09/22 15:40:54  peter
-    * some extra ifdef GDB
-
-  Revision 1.65  1998/09/18 16:03:38  florian
-    * some changes to compile with Delphi
-
-  Revision 1.64  1998/09/10 15:25:29  daniel
-  + Added maxheapsize.
-  * Corrected semi-bug in calling the assembler and the linker
-
-  Revision 1.63  1998/09/09 18:17:13  florian
-    * version number changed to 0.99.8
-
-  Revision 1.62  1998/09/07 17:36:59  florian
-    * first fixes for published properties
-
-  Revision 1.61  1998/09/03 11:21:52  peter
-    * -al sets cs_asm_source
-
-  Revision 1.60  1998/09/01 12:53:20  peter
-    + aktpackenum
-
-  Revision 1.59  1998/09/01 07:54:18  pierre
-    * UseBrowser a little updated (might still be buggy !!)
-    * bug in psub.pas in function specifier removed
-    * stdcall allowed in interface and in implementation
-      (FPC will not yet complain if it is missing in either part
-      because stdcall is only a dummy !!)
-
-  Revision 1.58  1998/08/31 12:26:25  peter
-    * m68k and palmos updates from surebugfixes
-
-  Revision 1.57  1998/08/29 13:51:09  peter
-    * moved get_exepath to globals
-    + date_string const with the current date for 0.99.7+
-
-  Revision 1.56  1998/08/26 15:35:31  peter
-    * fixed scannerfiles for macros
-    + $I %<environment>%
-
-  Revision 1.55  1998/08/25 12:42:35  pierre
-    * CDECL changed to CVAR for variables
-      specifications are read in structures also
-    + started adding GPC compatibility mode ( option  -Sp)
-    * names changed to lowercase
-
-  Revision 1.54  1998/08/19 18:04:53  peter
-    * fixed current_module^.in_implementation flag
-
-  Revision 1.53  1998/08/19 16:07:45  jonas
-    * changed optimizer switches + cleanup of DestroyRefs in daopt386.pas
-
-  Revision 1.52  1998/08/19 10:06:13  peter
-    * fixed filenames and removedir which supports slash at the end
-
-  Revision 1.51  1998/08/17 09:17:46  peter
-    * static/shared linking updates
-
-  Revision 1.50  1998/08/14 21:56:33  peter
-    * setting the outputfile using -o works now to create static libs
-
-  Revision 1.49  1998/08/13 10:57:31  peter
-    * constant sets are now written correctly to the ppufile
-
-  Revision 1.48  1998/08/11 15:31:37  peter
-    * write extended to ppu file
-    * new version 0.99.7
-
-  Revision 1.47  1998/08/10 14:49:59  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.46  1998/08/10 10:18:25  peter
-    + Compiler,Comphook unit which are the new interface units to the
-      compiler
-
-  Revision 1.45  1998/07/24 22:16:56  florian
-    * internal error 10 together with array access fixed. I hope
-      that's the final fix.
-
-  Revision 1.44  1998/07/18 17:11:08  florian
-    + ansi string constants fixed
-    + switch $H partial implemented
-
-  Revision 1.43  1998/07/14 21:46:42  peter
-    * updated messages file
-
-  Revision 1.42  1998/07/08 14:28:35  daniel
-  * Fixed small TP incompatibility: Fsplit requires use of dirstr, namestr and
-  extstr
-
-  Revision 1.41  1998/07/07 11:19:56  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.40  1998/06/25 08:48:13  florian
-    * first version of rtti support
-
-  Revision 1.39  1998/06/17 14:10:12  peter
-    * small os2 fixes
-    * fixed interdependent units with newppu (remake3 under linux works now)
-
-  Revision 1.38  1998/06/16 08:56:21  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.37  1998/06/13 00:10:06  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.36  1998/06/12 16:15:31  pierre
-    * external name 'C_var';
-      export name 'intern_C_var';
-      cdecl;
-      cdecl;external;
-      are now supported only with -Sv switch
-
-  Revision 1.34  1998/06/04 23:51:39  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.33  1998/06/03 22:48:54  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.32  1998/05/30 14:31:04  peter
-    + $ASMMODE
-
-  Revision 1.31  1998/05/28 14:40:24  peter
-    * fixes for newppu, remake3 works now with it
-
-  Revision 1.30  1998/05/27 19:45:03  peter
-    * symtable.pas splitted into includefiles
-    * symtable adapted for $ifdef NEWPPU
-
-  Revision 1.29  1998/05/25 17:11:39  pierre
-    * firstpasscount bug fixed
-      now all is already set correctly the first time
-      under EXTDEBUG try -gp to skip all other firstpasses
-      it works !!
-    * small bug fixes
-      - for smallsets with -dTESTSMALLSET
-      - some warnings removed (by correcting code !)
-
-  Revision 1.28  1998/05/23 01:21:07  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.27  1998/05/20 09:42:33  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.26  1998/05/12 10:46:59  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.25  1998/05/11 13:07:54  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.24  1998/05/08 09:21:20  michael
-  * Added missing -Fl message to messages file.
-  * Corrected mangling of file names when doing Linklib
-  * -Fl now actually WORKS.
-  * Librarysearchpath is now a field in linker object.
-
-  Revision 1.23  1998/05/06 15:04:20  pierre
-    + when trying to find source files of a ppufile
-      check the includepathlist for included files
-      the main file must still be in the same directory
-
-  Revision 1.22  1998/05/06 08:38:39  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.21  1998/05/04 17:54:25  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.20  1998/05/01 07:43:53  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.19  1998/04/30 15:59:40  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.18  1998/04/29 10:33:52  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.17  1998/04/27 23:10:28  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.16  1998/04/27 15:45:20  peter
-    + -Xl for smartlink
-    + target_info.arext = .a
-
-  Revision 1.15  1998/04/22 21:06:50  florian
-    * last fixes before the release:
-      - veryyyy slow firstcall fixed
-
-  Revision 1.14  1998/04/21 13:48:09  michael
-  + Updated patch number
-
-  Revision 1.13  1998/04/21 10:16:47  peter
-    * patches from strasbourg
-    * objects is not used anymore in the fpc compiled version
-
-  Revision 1.12  1998/04/09 14:28:06  jonas
-    + basic k6 and 6x86 optimizing support (-O7 and -O8)
-
-  Revision 1.11  1998/04/08 16:58:02  pierre
-    * several bugfixes
-      ADD ADC and AND are also sign extended
-      nasm output OK (program still crashes at end
-      and creates wrong assembler files !!)
-      procsym types sym in tdef removed !!
-
-  Revision 1.10  1998/04/08 11:34:22  peter
-    * nasm works (linux only tested)
-
-  Revision 1.9  1998/04/07 21:37:30  peter
-    * fixed fixpath to also change / and \ slashes and better addpathtolist
-
-  Revision 1.8  1998/04/07 13:19:44  pierre
-    * bugfixes for reset_gdb_info
-      in MEM parsing for go32v2
-      better external symbol creation
-      support for rhgdb.exe (lowercase file names)
-
-  Revision 1.7  1998/04/06 16:19:46  peter
-    * fixed the -Up.. bug
-
 }
 }
 
 

+ 4 - 8
compiler/globtype.pas

@@ -191,7 +191,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.21  1999-11-04 10:55:31  peter
+  Revision 1.22  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.21  1999/11/04 10:55:31  peter
     * TSearchPathString for the string type of the searchpaths, which is
     * TSearchPathString for the string type of the searchpaths, which is
       ansistring under FPC/Delphi
       ansistring under FPC/Delphi
 
 
@@ -268,12 +271,5 @@ end.
   Revision 1.3  1999/01/27 13:51:44  pierre
   Revision 1.3  1999/01/27 13:51:44  pierre
    * dos end of line problem
    * dos end of line problem
 
 
-  Revision 1.2  1998/12/23 12:40:48  daniel
-  * Added begin to globtype and version to avoid empty object files.
-  * Fileexists no longer finds volume labels.
-
-  Revision 1.1  1998/12/11 00:05:27  peter
-    * splitted from globals.pas
-
 }
 }
 
 

+ 4 - 109
compiler/hcodegen.pas

@@ -374,7 +374,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.46  1999-10-21 14:18:54  peter
+  Revision 1.47  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.46  1999/10/21 14:18:54  peter
     * tp7 fix
     * tp7 fix
 
 
   Revision 1.45  1999/10/14 14:57:52  florian
   Revision 1.45  1999/10/14 14:57:52  florian
@@ -445,112 +448,4 @@ end.
     * ag386bin updates
     * ag386bin updates
     + coff writer
     + coff writer
 
 
-  Revision 1.26  1999/02/22 02:15:21  peter
-    * updates for ag386bin
-
-  Revision 1.25  1999/01/21 22:10:45  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.24  1998/12/29 18:48:18  jonas
-    + optimize pascal code surrounding assembler blocks
-
-  Revision 1.23  1998/11/27 14:50:38  peter
-    + open strings, $P switch support
-
-  Revision 1.22  1998/11/16 12:12:21  peter
-    - generate_pascii which is obsolete
-
-  Revision 1.21  1998/11/04 10:11:38  peter
-    * ansistring fixes
-
-  Revision 1.20  1998/10/29 15:42:48  florian
-    + partial disposing of temp. ansistrings
-
-  Revision 1.19  1998/10/26 22:58:18  florian
-    * new introduded problem with classes fix, the parent class wasn't set
-      correct, if the class was defined forward before
-
-  Revision 1.18  1998/10/06 17:16:50  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.17  1998/09/17 09:42:37  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.16  1998/09/07 18:46:04  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.15  1998/09/01 09:02:51  peter
-    * moved message() to hcodegen, so pass_2 also uses them
-
-  Revision 1.14  1998/08/21 14:08:43  pierre
-    + TEST_FUNCRET now default (old code removed)
-      works also for m68k (at least compiles)
-
-  Revision 1.13  1998/08/20 09:26:38  pierre
-    + funcret setting in underproc testing
-      compile with _dTEST_FUNCRET
-
-  Revision 1.12  1998/08/10 14:50:01  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.11  1998/07/28 21:52:51  florian
-    + implementation of raise and try..finally
-    + some misc. exception stuff
-
-  Revision 1.10  1998/07/20 18:40:13  florian
-    * handling of ansi string constants should now work
-
-  Revision 1.9  1998/06/05 16:13:34  pierre
-    * fix for real and string consts inside inlined procs
-
-  Revision 1.8  1998/06/04 23:51:40  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.7  1998/06/04 09:55:38  pierre
-    * demangled name of procsym reworked to become independant of the mangling scheme
-
-  Revision 1.6  1998/05/23 01:21:08  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.5  1998/05/20 09:42:34  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.4  1998/05/07 00:17:01  peter
-    * smartlinking for sets
-    + consts labels are now concated/generated in hcodegen
-    * moved some cpu code to cga and some none cpu depended code from cga
-      to tree and hcodegen and cleanup of hcodegen
-    * assembling .. output reduced for smartlinking ;)
-
-  Revision 1.3  1998/05/06 08:38:40  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.2  1998/04/29 10:33:53  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
 }
 }

+ 4 - 90
compiler/htypechk.pas

@@ -834,7 +834,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.44  1999-11-04 23:11:21  peter
+  Revision 1.45  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.44  1999/11/04 23:11:21  peter
     * fixed pchar and deref detection for assigning
     * fixed pchar and deref detection for assigning
 
 
   Revision 1.43  1999/10/27 16:04:45  peter
   Revision 1.43  1999/10/27 16:04:45  peter
@@ -911,93 +914,4 @@ end.
   Revision 1.27  1999/06/01 19:27:47  peter
   Revision 1.27  1999/06/01 19:27:47  peter
     * better checks for procvar and methodpointer
     * better checks for procvar and methodpointer
 
 
-  Revision 1.26  1999/05/20 14:58:26  peter
-    * fixed arrayconstruct->set conversion which didn't work for enum sets
-
-  Revision 1.25  1999/05/19 20:40:12  florian
-    * fixed a couple of array related bugs:
-      - var a : array[0..1] of char;   p : pchar;  p:=a+123; works now
-      - open arrays with an odd size doesn't work: movsb wasn't generated
-      - introduced some new array type helper routines (is_special_array) etc.
-      - made the array type checking in isconvertable more strict, often
-        open array can be used where is wasn't allowed etc...
-
-  Revision 1.24  1999/05/06 10:10:02  peter
-    * overloaded conversion has lower priority
-
-  Revision 1.23  1999/04/26 09:30:47  peter
-    * small tp7 fix
-    * fix void pointer with formaldef
-
-  Revision 1.22  1999/04/21 22:00:01  pierre
-    + valid_for_formal_var and valid_for_formal_const added
-
-  Revision 1.21  1999/04/21 16:31:40  pierre
-  ra386att.pas : problem with commit -m !
-
-  Revision 1.20  1999/04/15 08:56:27  peter
-    * fixed bool-bool conversion
-
-  Revision 1.19  1999/03/24 23:17:02  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.18  1999/03/06 17:25:19  peter
-    * moved comp<->real warning so it doesn't occure everytime that
-      isconvertable is called with
-
-  Revision 1.17  1999/03/02 18:24:20  peter
-    * fixed overloading of array of char
-
-  Revision 1.16  1999/01/27 13:53:27  pierre
-  htypechk.pas
-
-  Revision 1.15  1999/01/27 13:12:10  pierre
-   * bool to int must be explicit
-
-  Revision 1.14  1999/01/19 15:55:32  pierre
-   * fix for boolean to comp conversion (now disabled)
-
-  Revision 1.13  1998/12/15 17:11:37  peter
-    * string:=pchar not allowed in tp mode
-
-  Revision 1.12  1998/12/11 00:03:18  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.11  1998/12/10 09:47:21  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.10  1998/11/29 12:40:23  peter
-    * newcnv -> not oldcnv
-
-  Revision 1.9  1998/11/26 13:10:42  peter
-    * new int - int conversion -dNEWCNV
-    * some function renamings
-
-  Revision 1.8  1998/11/17 00:36:42  peter
-    * more ansistring fixes
-
-  Revision 1.7  1998/10/14 13:33:24  peter
-    * fixed small typo
-
-  Revision 1.6  1998/10/14 12:53:38  peter
-    * fixed small tp7 things
-    * boolean:=longbool and longbool fixed
-
-  Revision 1.5  1998/10/12 09:49:58  florian
-    + support of <procedure var type>:=<pointer> in delphi mode added
-
-  Revision 1.4  1998/09/30 16:42:52  peter
-    * fixed bool-bool cnv
-
-  Revision 1.3  1998/09/24 23:49:05  peter
-    + aktmodeswitches
-
-  Revision 1.2  1998/09/24 09:02:14  peter
-    * rewritten isconvertable to use case
-    * array of .. and single variable are compatible
-
-  Revision 1.1  1998/09/23 20:42:22  peter
-    * splitted pass_1
-
 }
 }

+ 5 - 2
compiler/import.pas

@@ -234,7 +234,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.14  1999-11-02 15:06:57  peter
+  Revision 1.15  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.14  1999/11/02 15:06:57  peter
     * import library fixes for win32
     * import library fixes for win32
     * alignment works again
     * alignment works again
 
 
@@ -294,4 +297,4 @@ end.
       Comment() calls are left
       Comment() calls are left
     * fixed options.pas
     * fixed options.pas
 
 
-}
+}

+ 4 - 195
compiler/link.pas

@@ -525,7 +525,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.75  1999-10-26 12:25:04  peter
+  Revision 1.76  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.75  1999/10/26 12:25:04  peter
     * fixed os2 linker
     * fixed os2 linker
 
 
   Revision 1.74  1999/10/21 14:29:34  peter
   Revision 1.74  1999/10/21 14:29:34  peter
@@ -599,198 +602,4 @@ end.
   Revision 1.54.2.2  1999/06/18 09:51:55  peter
   Revision 1.54.2.2  1999/06/18 09:51:55  peter
     * always use shell() for go32v2 to support LFN
     * always use shell() for go32v2 to support LFN
 
 
-  Revision 1.54.2.1  1999/06/15 13:51:56  peter
-    * also check ld-2.1.so for glibc 2.1, previous was only for 2.1.1
-
-  Revision 1.54  1999/06/02 13:25:35  hajny
-    * fixed stripping symbols for OS/2
-
-  Revision 1.53  1999/05/04 21:44:44  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.52  1999/05/03 21:30:30  peter
-    + glibc 2.1
-
-  Revision 1.51  1999/04/28 23:42:33  pierre
-   * removing of temporary directory with -s option
-
-  Revision 1.50  1999/04/25 14:31:48  daniel
-  * Bug fixed in linking: compiling files on another drive than the one you
-  currently use you is done correctly.
-
-  Revision 1.49  1999/03/25 16:55:30  peter
-    + unitpath,librarypath,includepath,objectpath directives
-
-  Revision 1.48  1999/03/23 16:22:43  peter
-    * crtbegin/crtend only added if found
-
-  Revision 1.47  1999/02/05 16:45:47  michael
-  + Fixed gluing of options
-
-  Revision 1.46  1999/02/05 08:54:26  pierre
-    + linkofiles splitted inot linkofiles and linkunitfiles
-      because linkofiles must be stored with directory
-      to enabled linking of different objects with same name
-      in a different directory
-
-  Revision 1.45  1999/01/29 10:33:07  peter
-    * objectsearchpath is now also searched if an object is not found
-
-  Revision 1.44  1999/01/27 13:07:58  pierre
-   * problem related with libc : go32v2 and linux differences
-
-  Revision 1.43  1999/01/25 15:02:13  peter
-    * link libc always as last
-
-  Revision 1.42  1998/12/11 00:03:19  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.41  1998/12/01 23:39:46  pierre
-   * postprocessexec for win32 changed
-
-  Revision 1.40  1998/12/01 12:51:20  peter
-    * fixed placing of ppas.sh and link.res when using -FE
-
-  Revision 1.39  1998/11/30 13:26:23  pierre
-    * the code for ordering the exported procs/vars was buggy
-    + added -WB to force binding (Ozerski way of creating DLL)
-      this is off by default as direct writing of .edata section seems
-      OK
-
-  Revision 1.38  1998/11/30 09:43:13  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.37  1998/10/26 22:23:31  peter
-    + fixpath() has an extra option to allow a ./ as path
-
-  Revision 1.36  1998/10/22 15:18:44  florian
-    + switch -vx for win32 added
-
-  Revision 1.35  1998/10/19 18:06:23  peter
-    * use no_double
-
-  Revision 1.34  1998/10/16 13:37:18  florian
-    + switch -FD added to specify the path for utilities
-
-  Revision 1.33  1998/10/14 13:38:22  peter
-    * fixed path with staticlib/objects in ppufiles
-
-  Revision 1.32  1998/10/14 11:03:55  daniel
-  * Forgot to dereference a pointer.
-
-  Revision 1.31  1998/10/14 11:01:21  daniel
-  * Staticlibfilename no longer not include a path. Correction when calling
-  ar.
-
-  Revision 1.30  1998/10/13 13:10:18  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.29  1998/10/13 08:19:34  pierre
-    + source_os is now set correctly for cross-processor compilers
-      (tos contains all target_infos and
-       we use CPU86 and CPU68 conditionals to
-       get the source operating system
-       this only works if you do not undefine
-       the source target  !!)
-    * several cg68k memory leaks fixed
-    + started to change the code so that it should be possible to have
-      a complete compiler (both for m68k and i386 !!)
-
-  Revision 1.28  1998/10/08 23:28:56  peter
-    * -vu shows unit info, -vt shows tried/used files
-
-  Revision 1.27  1998/10/06 17:16:52  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.26  1998/09/29 15:23:05  peter
-    * remove also the end files for smartlinking
-
-  Revision 1.25  1998/09/10 15:25:31  daniel
-  + Added maxheapsize.
-  * Corrected semi-bug in calling the assembler and the linker
-
-  Revision 1.24  1998/09/07 18:32:45  peter
-    * fixed for m68k
-
-  Revision 1.23  1998/09/03 17:39:04  florian
-    + better code for type conversation longint/dword to real type
-
-  Revision 1.22  1998/09/01 09:01:00  peter
-    + glibc2 support
-
-  Revision 1.21  1998/08/31 12:26:26  peter
-    * m68k and palmos updates from surebugfixes
-
-  Revision 1.20  1998/08/19 10:06:14  peter
-    * fixed filenames and removedir which supports slash at the end
-
-  Revision 1.19  1998/08/17 09:17:47  peter
-    * static/shared linking updates
-
-  Revision 1.18  1998/08/14 21:56:34  peter
-    * setting the outputfile using -o works now to create static libs
-
-  Revision 1.17  1998/08/14 18:16:08  peter
-    * return after a failed call will now add it to ppas
-
-  Revision 1.16  1998/08/12 19:28:15  peter
-    * better libc support
-
-  Revision 1.15  1998/08/10 14:50:02  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.14  1998/06/17 14:10:13  peter
-    * small os2 fixes
-    * fixed interdependent units with newppu (remake3 under linux works now)
-
-  Revision 1.13  1998/06/08 22:59:46  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.12  1998/06/04 23:51:44  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.11  1998/05/27 00:20:31  peter
-    * some scanner optimizes
-    * automaticly aout2exe for go32v1
-    * fixed dynamiclinker option which was added at the wrong place
-
-  Revision 1.10  1998/05/22 12:32:47  peter
-    * fixed -L on the commandline, Dos commandline is only 128 bytes
-
-  Revision 1.9  1998/05/12 10:46:59  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.8  1998/05/11 13:07:54  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.7  1998/05/08 09:21:20  michael
-  * Added missing -Fl message to messages file.
-  * Corrected mangling of file names when doing Linklib
-  * -Fl now actually WORKS.
-  * Librarysearchpath is now a field in linker object.
-
-  Revision 1.6  1998/05/06 09:26:49  peter
-    * fixed ld call with shell
-
-  Revision 1.4  1998/05/04 17:54:25  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.3  1998/04/16 10:54:30  daniel
-  * Fixed linking for OS/2.
 }
 }

+ 5 - 5
compiler/og386.pas

@@ -270,7 +270,10 @@ unit og386;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.13  1999-11-02 15:06:57  peter
+  Revision 1.14  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.13  1999/11/02 15:06:57  peter
     * import library fixes for win32
     * import library fixes for win32
     * alignment works again
     * alignment works again
 
 
@@ -343,7 +346,4 @@ end.
     * ag386bin updates
     * ag386bin updates
     + coff writer
     + coff writer
 
 
-  Revision 1.1  1999/02/16 17:59:39  peter
-    + initial files
-
-}
+}

+ 4 - 23
compiler/og386cff.pas

@@ -978,7 +978,10 @@ unit og386cff;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.13  1999-11-02 15:06:57  peter
+  Revision 1.14  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.13  1999/11/02 15:06:57  peter
     * import library fixes for win32
     * import library fixes for win32
     * alignment works again
     * alignment works again
 
 
@@ -1050,26 +1053,4 @@ end.
   Revision 1.7  1999/03/04 13:44:58  pierre
   Revision 1.7  1999/03/04 13:44:58  pierre
    * win32 pecoff sections datapos allways zero
    * win32 pecoff sections datapos allways zero
 
 
-  Revision 1.6  1999/03/03 11:41:54  pierre
-    + stabs info corrected to give results near to GAS output
-    * local labels (with .L are not stored in object anymore)
-      so we get the same number of symbols as from GAS !
-
-  Revision 1.5  1999/03/03 01:36:46  pierre
-    + stabs output working (though not really tested)
-      for a simple file the only difference to GAS output is due
-      to the VMA of the different sections
-
-  Revision 1.4  1999/03/02 02:56:27  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.3  1999/03/01 15:46:25  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
-
-  Revision 1.2  1999/02/25 21:03:10  peter
-    * ag386bin updates
-    + coff writer
-
 }
 }

+ 4 - 498
compiler/options.pas

@@ -1251,7 +1251,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.32  1999-11-04 23:13:25  peter
+  Revision 1.33  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.32  1999/11/04 23:13:25  peter
     * moved unit alias support into ifdef
     * moved unit alias support into ifdef
 
 
   Revision 1.31  1999/11/04 10:54:03  peter
   Revision 1.31  1999/11/04 10:54:03  peter
@@ -1324,501 +1327,4 @@ end.
     * tlinker object is now inherited for win32 and dos
     * tlinker object is now inherited for win32 and dos
     * postprocessexecutable is now a method of tlinker
     * postprocessexecutable is now a method of tlinker
 
 
-  Revision 1.12  1999/08/10 12:51:17  pierre
-    * bind_win32_dll removed (Relocsection used instead)
-    * now relocsection is true by default ! (needs dlltool
-      for DLL generation)
-
-  Revision 1.11  1999/08/09 22:19:52  peter
-    * classes vmt changed to only positive addresses
-    * sharedlib creation is working
-
-  Revision 1.10  1999/08/05 23:45:10  peter
-    * saveregister is now working and used for assert and iocheck (which has
-      been moved to system.inc because it's now system independent)
-
-  Revision 1.9  1999/08/04 13:02:46  jonas
-    * all tokens now start with an underscore
-    * PowerPC compiles!!
-
-  Revision 1.8  1999/08/03 17:09:36  florian
-    * the alpha compiler can be compiled now
-
-  Revision 1.7  1999/08/02 23:13:19  florian
-    * more changes to compile for the Alpha
-
-  Revision 1.6  1999/07/23 22:56:27  michael
-  + Added HasResourceStrings define
-
-  Revision 1.5  1999/07/18 10:19:57  florian
-    * made it compilable with Dlephi 4 again
-    + fixed problem with large stack allocations on win32
-
-  Revision 1.4  1999/07/05 20:13:14  peter
-    * removed temp defines
-
-  Revision 1.3  1999/07/03 00:29:54  peter
-    * new link writing to the ppu, one .ppu is needed for all link types,
-      static (.o) is now always created also when smartlinking is used
-
-  Revision 1.2  1999/07/01 15:49:19  florian
-    * int64/qword type release
-    + lo/hi for int64/qword
-
-  Revision 1.1  1999/06/11 13:28:40  peter
-    * reinserted
-
-  Revision 1.111  1999/06/10 23:52:31  pierre
-   * merged from fixes branch
-
-  Revision 1.110.2.1  1999/06/10 23:37:17  pierre
-   * language switch before help screen
-
-  Revision 1.110  1999/05/27 19:44:40  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.109  1999/05/18 14:11:46  peter
-    * stop after errors in options
-
-  Revision 1.108  1999/05/17 14:14:15  pierre
-   + -gc for check pointer with heaptrc
-
-  Revision 1.107  1999/05/16 02:28:59  peter
-    * removed -Fg and -Up
-
-  Revision 1.106  1999/05/06 09:05:20  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.105  1999/05/04 21:44:51  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.104  1999/05/02 22:41:56  peter
-    * moved section names to systems
-    * fixed nasm,intel writer
-
-  Revision 1.103  1999/05/01 13:24:25  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.102  1999/04/26 18:29:55  peter
-    * farpointerdef moved into pointerdef.is_far
-
-  Revision 1.101  1999/04/26 13:31:35  peter
-    * release storenumber,double_checksum
-
-  Revision 1.100  1999/04/17 13:12:21  peter
-    * addr() internal
-
-  Revision 1.99  1999/04/16 11:49:44  peter
-    + tempalloc
-    + -at to show temp alloc info in .s file
-
-  Revision 1.98  1999/04/15 12:19:56  peter
-    + finalization support
-
-  Revision 1.97  1999/04/10 16:15:02  peter
-    * fixed browcol
-    + -ar to show regalloc info in .s file
-
-  Revision 1.96  1999/04/08 15:57:49  peter
-    + subrange checking for readln()
-
-  Revision 1.95  1999/04/01 22:07:52  peter
-    * universal string names (ansistr instead of stransi) for val/str
-
-  Revision 1.94  1999/03/26 00:05:32  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.93  1999/03/25 16:55:32  peter
-    + unitpath,librarypath,includepath,objectpath directives
-
-  Revision 1.92  1999/03/24 23:17:08  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.91  1999/03/16 17:52:51  jonas
-    * changes for internal Val code (do a "make cycle OPT=-dvalintern" to test)
-    * in cgi386inl: also range checking for subrange types (compile with "-dreadrangecheck")
-    * in cgai386: also small fixes to emitrangecheck
-
-  Revision 1.90  1999/03/11 13:39:15  pierre
-   * initoutputformat also set by -T arg
-
-  Revision 1.89  1999/03/02 02:56:13  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.88  1999/02/22 13:06:57  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.87  1999/02/03 10:18:12  pierre
-   * conditional code for extended check of virtual methods
-
-  Revision 1.86  1999/01/12 14:25:28  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.85  1998/12/30 22:04:34  michael
-  + Added -Sh switch
-
-  Revision 1.84  1998/12/28 15:45:48  peter
-    * fixes for parse_cmd
-
-  Revision 1.83  1998/12/19 00:23:50  florian
-    * ansistring memory leaks fixed
-
-  Revision 1.82  1998/12/18 17:25:50  peter
-    * removed temp symbols again :)
-
-  Revision 1.81  1998/12/16 14:29:00  jonas
-    * use of UnsetBool instead of manually checking for -Option-
-
-  Revision 1.80  1998/12/16 13:36:05  jonas
-    * allow '-' after the -C? options to disable them
-
-  Revision 1.78  1998/12/15 10:23:25  peter
-    + -iSO, -iSP, -iTO, -iTP
-
-  Revision 1.77  1998/12/14 17:23:05  peter
-    + -iV, -iD
-
-  Revision 1.76  1998/12/11 00:03:21  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.75  1998/12/08 10:18:10  peter
-    + -gh for heaptrc unit
-
-  Revision 1.74  1998/11/30 13:26:24  pierre
-    * the code for ordering the exported procs/vars was buggy
-    + added -WB to force binding (Ozerski way of creating DLL)
-      this is off by default as direct writing of .edata section seems
-      OK
-
-  Revision 1.73  1998/11/30 09:43:18  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.72  1998/11/28 14:09:45  peter
-    * NOATTCDQ define
-
-  Revision 1.71  1998/11/27 14:50:39  peter
-    + open strings, $P switch support
-
-  Revision 1.70  1998/11/18 09:18:02  pierre
-    + automatic loading of profile unit with -pg option
-      in go32v2 mode (also defines FPC_PROFILE)
-    * some memory leaks removed
-    * unreleased temp problem with sets solved
-
-  Revision 1.69  1998/11/17 11:32:45  peter
-    * optimize str:='' in H+ mode
-    + -! to test ansistrings
-
-  Revision 1.68  1998/11/17 00:36:46  peter
-    * more ansistring fixes
-
-  Revision 1.67  1998/11/13 15:40:20  pierre
-    + added -Se in Makefile cvstest target
-    + lexlevel cleanup
-      normal_function_level main_program_level and unit_init_level defined
-    * tins_cache grown to A_EMMS (gave range check error in asm readers)
-      (test added in code !)
-    * -Un option was wrong
-    * _FAIL and _SELF only keyword inside
-      constructors and methods respectively
-
-  Revision 1.66  1998/11/13 10:18:08  peter
-    + nil constants
-
-  Revision 1.65  1998/11/11 12:34:53  peter
-    * fixed small typo
-
-  Revision 1.64  1998/11/10 17:54:12  peter
-    * -g disables linker.strip
-
-  Revision 1.63  1998/11/05 12:02:49  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.62  1998/11/04 10:11:39  peter
-    * ansistring fixes
-
-  Revision 1.61  1998/10/27 08:24:11  pierre
-   -lS and -lT options changed to -iS and -iT
-
-  Revision 1.60  1998/10/26 22:23:33  peter
-    + fixpath() has an extra option to allow a ./ as path
-
-  Revision 1.59  1998/10/26 14:19:27  pierre
-    + added options -lS and -lT for source and target os output
-      (to have a easier way to test OS_SOURCE abd OS_TARGET in makefiles)
-    * several problems with rtti data
-      (type of sym was not checked)
-      assumed to be varsym when they could be procsym or property syms !!
-
-  Revision 1.58  1998/10/20 09:32:55  peter
-    * removed some unused vars
-
-  Revision 1.57  1998/10/16 13:37:23  florian
-    + switch -FD added to specify the path for utilities
-
-  Revision 1.56  1998/10/15 12:37:43  pierre
-    + passes vmt offset to HELP_CONSTRUCTOR for objects
-
-  Revision 1.55  1998/10/13 13:10:19  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.54  1998/10/13 08:19:40  pierre
-    + source_os is now set correctly for cross-processor compilers
-      (tos contains all target_infos and
-       we use CPU86 and CPU68 conditionals to
-       get the source operating system
-       this only works if you do not undefine
-       the source target  !!)
-    * several cg68k memory leaks fixed
-    + started to change the code so that it should be possible to have
-      a complete compiler (both for m68k and i386 !!)
-
-  Revision 1.53  1998/10/09 13:00:25  pierre
-    * msgfile existence tested
-
-  Revision 1.52  1998/10/08 17:17:22  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.51  1998/10/05 13:53:42  peter
-    + -Se<value>
-
-  Revision 1.50  1998/10/02 09:24:21  peter
-    * more constant expression evaluators
-
-  Revision 1.49  1998/09/26 17:45:29  peter
-    + idtoken and only one token table
-
-  Revision 1.48  1998/09/25 09:57:07  peter
-    * moved -A to options.pas, becuase the code is the same
-
-  Revision 1.47  1998/09/24 23:47:03  peter
-    + -FE,-FU,-Sd
-
-  Revision 1.46  1998/09/23 15:39:06  pierre
-    * browser bugfixes
-      was adding a reference when looking for the symbol
-      if -bSYM_NAME was used
-
-  Revision 1.45  1998/09/22 17:13:47  pierre
-    + browsing updated and developed
-      records and objects fields are also stored
-
-  Revision 1.44  1998/09/21 08:45:11  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.43  1998/09/18 08:01:33  pierre
-    + improvement on the usebrowser part
-      (does not work correctly for now)
-
-  Revision 1.42  1998/09/14 10:44:09  peter
-    * all internal RTL functions start with FPC_
-
-  Revision 1.41  1998/09/03 11:21:51  peter
-    * -al sets cs_asm_source
-
-  Revision 1.40  1998/08/31 08:50:32  peter
-    * fixed default msgfile loading which is now in verbose.pas
-
-  Revision 1.39  1998/08/29 13:52:38  peter
-    + new messagefile
-    * merged optione.msg into errore.msg
-
-  Revision 1.38  1998/08/25 12:42:38  pierre
-    * CDECL changed to CVAR for variables
-      specifications are read in structures also
-    + started adding GPC compatibility mode ( option  -Sp)
-    * names changed to lowercase
-
-  Revision 1.37  1998/08/20 16:10:52  pierre
-    Q
-    * Changed the -E switch to get better use of RHIDE v1.4.5
-
-  Revision 1.36  1998/08/18 09:05:59  peter
-    * new library options
-    * smartlink is now -Cx
-
-  Revision 1.35  1998/08/17 09:17:48  peter
-    * static/shared linking updates
-
-  Revision 1.34  1998/08/14 21:56:35  peter
-    * setting the outputfile using -o works now to create static libs
-
-  Revision 1.33  1998/08/10 23:53:47  peter
-    * released all temporary defines
-
-  Revision 1.32  1998/08/10 14:50:03  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.30  1998/08/10 08:33:17  michael
-  -d was destroyed by last comit
-
-  Revision 1.29  1998/08/08 15:31:04  michael
-  + Reinstated -e option for linux
-
-  Revision 1.28  1998/07/17 10:06:18  michael
-  + under linux, looking for ppc38.cfg in bindir removed.
-
-  Revision 1.27  1998/07/07 11:19:58  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.26  1998/07/06 15:51:17  michael
-  Added length checking for string reading
-
-  Revision 1.25  1998/07/04 10:00:22  peter
-    + define HAS_PROPERTY
-
-  Revision 1.24  1998/07/01 15:28:49  peter
-    + better writeln/readln handling, now 100% like tp7
-
-  Revision 1.22  1998/06/13 00:10:07  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.21  1998/06/12 16:15:32  pierre
-    * external name 'C_var';
-      export name 'intern_C_var';
-      cdecl;
-      cdecl;external;
-      are now supported only with -Sv switch
-
-  Revision 1.20  1998/06/08 22:59:47  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.19  1998/06/04 23:51:46  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.17  1998/05/25 17:11:40  pierre
-    * firstpasscount bug fixed
-      now all is already set correctly the first time
-      under EXTDEBUG try -gp to skip all other firstpasses
-      it works !!
-    * small bug fixes
-      - for smallsets with -dTESTSMALLSET
-      - some warnings removed (by correcting code !)
-
-  Revision 1.16  1998/05/23 01:21:12  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.15  1998/05/20 09:42:34  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.14  1998/05/12 10:46:59  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.13  1998/05/08 09:21:20  michael
-  * Added missing -Fl message to messages file.
-  * Corrected mangling of file names when doing Linklib
-  * -Fl now actually WORKS.
-  * Librarysearchpath is now a field in linker object.
-
-  Revision 1.12  1998/05/06 08:38:41  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.11  1998/05/04 17:54:27  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.10  1998/05/01 16:38:44  florian
-    * handling of private and protected fixed
-    + change_keywords_to_tp implemented to remove
-      keywords which aren't supported by tp
-    * break and continue are now symbols of the system unit
-    + widestring, longstring and ansistring type released
-
-  Revision 1.9  1998/04/30 15:59:40  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.8  1998/04/27 15:45:20  peter
-    + -Xl for smartlink
-    + target_info.arext = .a
-
-  Revision 1.7  1998/04/23 12:07:25  peter
-    * fixed -i
-
-  Revision 1.6  1998/04/08 16:58:03  pierre
-    * several bugfixes
-      ADD ADC and AND are also sign extended
-      nasm output OK (program still crashes at end
-      and creates wrong assembler files !!)
-      procsym types sym in tdef removed !!
-
-  Revision 1.5  1998/04/08 12:31:00  peter
-    + .ppc386.cfg and #INCLUDE support
-
-  Revision 1.4  1998/04/07 13:19:46  pierre
-    * bugfixes for reset_gdb_info
-      in MEM parsing for go32v2
-      better external symbol creation
-      support for rhgdb.exe (lowercase file names)
 }
 }

+ 4 - 305
compiler/parser.pas

@@ -487,7 +487,10 @@ unit parser;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.89  1999-10-22 10:39:34  peter
+  Revision 1.90  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.89  1999/10/22 10:39:34  peter
     * split type reading from pdecl to ptype unit
     * split type reading from pdecl to ptype unit
     * parameter_dec routine is now used for procedure and procvars
     * parameter_dec routine is now used for procedure and procvars
 
 
@@ -563,309 +566,5 @@ end.
   Revision 1.70  1999/03/24 23:17:10  peter
   Revision 1.70  1999/03/24 23:17:10  peter
     * fixed bugs 212,222,225,227,229,231,233
     * fixed bugs 212,222,225,227,229,231,233
 
 
-  Revision 1.69  1999/02/25 21:02:40  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.68  1999/02/02 16:39:41  peter
-    * reset c,pattern,orgpattern also at startup
-
-  Revision 1.67  1999/01/27 13:05:44  pierre
-   * give include file name on error
-
-  Revision 1.66  1999/01/23 23:29:35  florian
-    * first running version of the new code generator
-    * when compiling exceptions under Linux fixed
-
-  Revision 1.65  1999/01/22 12:19:31  pierre
-   + currently compiled file name added on errors
-
-  Revision 1.64  1999/01/12 14:25:29  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.63  1998/12/11 00:03:26  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.62  1998/12/01 12:51:21  peter
-    * fixed placing of ppas.sh and link.res when using -FE
-
-  Revision 1.61  1998/11/10 10:09:11  peter
-    * va_list -> array of const
-
-  Revision 1.60  1998/10/28 18:26:14  pierre
-   * removed some erros after other errors (introduced by useexcept)
-   * stabs works again correctly (for how long !)
-
-  Revision 1.59  1998/10/26 17:15:18  pierre
-    + added two level of longjump to
-      allow clean freeing of used memory on errors
-
-  Revision 1.58  1998/10/16 08:50:02  peter
-    * reset_gdb_info -> reset_global_def becuase it also resets rangenr !
-
-  Revision 1.57  1998/10/08 17:17:23  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.56  1998/10/08 13:48:45  peter
-    * fixed memory leaks for do nothing source
-    * fixed unit interdependency
-
-  Revision 1.55  1998/10/06 17:16:53  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.54  1998/10/05 21:33:23  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.53  1998/09/30 16:43:36  peter
-    * fixed unit interdependency with circular uses
-
-  Revision 1.52  1998/09/28 16:57:22  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.51  1998/09/26 17:45:30  peter
-    + idtoken and only one token table
-
-  Revision 1.50  1998/09/24 23:49:08  peter
-    + aktmodeswitches
-
-  Revision 1.49  1998/09/23 15:39:07  pierre
-    * browser bugfixes
-      was adding a reference when looking for the symbol
-      if -bSYM_NAME was used
-
-  Revision 1.48  1998/09/22 17:13:48  pierre
-    + browsing updated and developed
-      records and objects fields are also stored
-
-  Revision 1.47  1998/09/21 09:00:18  peter
-    * reset_gdb_info only when debuginfo is set
-
-  Revision 1.46  1998/09/21 08:45:12  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.45  1998/09/18 08:01:35  pierre
-    + improvement on the usebrowser part
-      (does not work correctly for now)
-
-  Revision 1.44  1998/09/10 15:25:34  daniel
-  + Added maxheapsize.
-  * Corrected semi-bug in calling the assembler and the linker
-
-  Revision 1.43  1998/09/09 15:33:06  peter
-    * fixed in_global to allow directives also after interface token
-
-  Revision 1.42  1998/09/04 08:41:59  peter
-    * updated some error messages
-
-  Revision 1.41  1998/09/01 12:53:24  peter
-    + aktpackenum
-
-  Revision 1.40  1998/09/01 07:54:19  pierre
-    * UseBrowser a little updated (might still be buggy !!)
-    * bug in psub.pas in function specifier removed
-    * stdcall allowed in interface and in implementation
-      (FPC will not yet complain if it is missing in either part
-      because stdcall is only a dummy !!)
-
-  Revision 1.39  1998/08/26 10:07:09  peter
-    * dispose trees is now default for all > 0.99.5 compiles
-
-  Revision 1.38  1998/08/18 20:52:20  peter
-    * renamed in_main to in_global which is more logical
-
-  Revision 1.37  1998/08/17 09:17:49  peter
-    * static/shared linking updates
-
-  Revision 1.36  1998/08/14 21:56:36  peter
-    * setting the outputfile using -o works now to create static libs
-
-  Revision 1.35  1998/08/12 19:22:09  peter
-    * reset also the link* lists when recompiling an existing unit
-
-  Revision 1.34  1998/08/10 23:58:56  peter
-    * fixed asmlist dispose for 0.99.5
-
-  Revision 1.33  1998/08/10 14:50:07  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.32  1998/08/10 10:18:28  peter
-    + Compiler,Comphook unit which are the new interface units to the
-      compiler
-
-  Revision 1.31  1998/07/14 21:46:46  peter
-    * updated messages file
-
-  Revision 1.30  1998/07/14 14:46:49  peter
-    * released NEWINPUT
-
-  Revision 1.29  1998/07/07 11:19:59  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.28  1998/06/25 11:15:33  pierre
-    * ppu files where not closed in newppu !!
-      second compilation was impossible due to too many opened files
-      (not visible in 'make cycle' as we remove all the ppu files)
-
-  Revision 1.27  1998/06/17 14:10:15  peter
-    * small os2 fixes
-    * fixed interdependent units with newppu (remake3 under linux works now)
-
-  Revision 1.26  1998/06/16 08:56:23  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.25  1998/06/15 15:38:07  pierre
-    * small bug in systems.pas corrected
-    + operators in different units better hanlded
-
-  Revision 1.24  1998/06/13 00:10:08  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.23  1998/06/08 22:59:48  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.22  1998/06/05 17:47:28  peter
-    * some better uses clauses
-
-  Revision 1.21  1998/06/04 23:51:49  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.20  1998/06/03 22:48:55  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.19  1998/05/27 19:45:04  peter
-    * symtable.pas splitted into includefiles
-    * symtable adapted for $ifdef NEWPPU
-
-  Revision 1.18  1998/05/23 01:21:15  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.17  1998/05/20 09:42:34  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.16  1998/05/12 10:47:00  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.15  1998/05/11 13:07:54  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.14  1998/05/06 18:36:53  peter
-    * tai_section extended with code,data,bss sections and enumerated type
-    * ident 'compiled by FPC' moved to pmodules
-    * small fix for smartlink
-
-  Revision 1.13  1998/05/06 08:38:42  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.12  1998/05/04 17:54:28  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.11  1998/05/01 16:38:45  florian
-    * handling of private and protected fixed
-    + change_keywords_to_tp implemented to remove
-      keywords which aren't supported by tp
-    * break and continue are now symbols of the system unit
-    + widestring, longstring and ansistring type released
-
-  Revision 1.10  1998/05/01 07:43:56  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.9  1998/04/30 15:59:40  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.8  1998/04/29 10:33:55  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.7  1998/04/27 23:10:28  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.6  1998/04/21 10:16:48  peter
-    * patches from strasbourg
-    * objects is not used anymore in the fpc compiled version
-
-  Revision 1.5  1998/04/10 14:41:43  peter
-    * removed some Hints
-    * small speed optimization for AsmLn
-
-  Revision 1.4  1998/04/08 16:58:03  pierre
-    * several bugfixes
-      ADD ADC and AND are also sign extended
-      nasm output OK (program still crashes at end
-      and creates wrong assembler files !!)
-      procsym types sym in tdef removed !!
-
-  Revision 1.3  1998/04/07 22:45:04  florian
-    * bug0092, bug0115 and bug0121 fixed
-    + packed object/class/array
 }
 }
 
 

+ 4 - 100
compiler/pass_2.pas

@@ -697,7 +697,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.40  1999-09-27 23:44:52  peter
+  Revision 1.41  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.40  1999/09/27 23:44:52  peter
     * procinfo is now a pointer
     * procinfo is now a pointer
     * support for result setting in sub procedure
     * support for result setting in sub procedure
 
 
@@ -778,103 +781,4 @@ end.
   Revision 1.21  1999/05/17 21:57:11  florian
   Revision 1.21  1999/05/17 21:57:11  florian
     * new temporary ansistring handling
     * new temporary ansistring handling
 
 
-  Revision 1.20  1999/05/02 21:33:54  florian
-    * several bugs regarding -Or fixed
-
-  Revision 1.19  1999/05/01 13:24:28  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.18  1999/04/28 06:02:04  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.17  1999/03/31 13:55:11  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.16  1999/03/24 23:17:11  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.15  1999/02/22 02:15:25  peter
-    * updates for ag386bin
-
-  Revision 1.14  1999/01/23 23:29:37  florian
-    * first running version of the new code generator
-    * when compiling exceptions under Linux fixed
-
-  Revision 1.13  1998/12/30 13:41:09  peter
-    * released valuepara
-
-  Revision 1.12  1998/12/19 00:23:51  florian
-    * ansistring memory leaks fixed
-
-  Revision 1.11  1998/12/11 00:03:28  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.10  1998/11/18 15:44:14  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.9  1998/11/13 15:40:21  pierre
-    + added -Se in Makefile cvstest target
-    + lexlevel cleanup
-      normal_function_level main_program_level and unit_init_level defined
-    * tins_cache grown to A_EMMS (gave range check error in asm readers)
-      (test added in code !)
-    * -Un option was wrong
-    * _FAIL and _SELF only keyword inside
-      constructors and methods respectively
-
-  Revision 1.8  1998/10/29 15:42:49  florian
-    + partial disposing of temp. ansistrings
-
-  Revision 1.7  1998/10/26 22:58:19  florian
-    * new introduded problem with classes fix, the parent class wasn't set
-      correct, if the class was defined forward before
-
-  Revision 1.6  1998/09/23 09:58:52  peter
-    * first working array of const things
-
-  Revision 1.5  1998/09/21 10:01:06  peter
-    * check if procinfo^.def is assigned before storing registersfpu
-
-  Revision 1.4  1998/09/21 08:45:16  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.3  1998/09/17 09:42:40  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.2  1998/09/07 18:46:07  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.1  1998/09/01 09:07:12  peter
-    * m68k fixes, splitted cg68k like cgi386
-
 }
 }

+ 4 - 35
compiler/pbase.pas

@@ -160,7 +160,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.26  1999-10-01 08:02:46  peter
+  Revision 1.27  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.26  1999/10/01 08:02:46  peter
     * forward type declaration rewritten
     * forward type declaration rewritten
 
 
   Revision 1.25  1999/09/02 18:47:44  daniel
   Revision 1.25  1999/09/02 18:47:44  daniel
@@ -254,38 +257,4 @@ end.
     * UseBrower updated gives a global list of all position of all used symbols
     * UseBrower updated gives a global list of all position of all used symbols
       with switch -gb
       with switch -gb
 
 
-  Revision 1.6  1998/05/12 10:47:00  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.5  1998/05/06 08:38:44  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.4  1998/04/30 15:59:41  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.3  1998/04/29 10:33:57  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.2  1998/04/07 22:45:05  florian
-    * bug0092, bug0115 and bug0121 fixed
-    + packed object/class/array
 }
 }

+ 4 - 615
compiler/pdecl.pas

@@ -1183,7 +1183,10 @@ unit pdecl;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.167  1999-10-26 12:30:44  peter
+  Revision 1.168  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.167  1999/10/26 12:30:44  peter
     * const parameter is now checked
     * const parameter is now checked
     * better and generic check if a node can be used for assigning
     * better and generic check if a node can be used for assigning
     * export fixes
     * export fixes
@@ -1264,618 +1267,4 @@ end.
   Revision 1.147  1999/09/02 09:23:51  peter
   Revision 1.147  1999/09/02 09:23:51  peter
     * fixed double dispose of propsymlist
     * fixed double dispose of propsymlist
 
 
-  Revision 1.146  1999/09/01 13:44:56  florian
-    * fixed writing of class rtti: vmt offset were written wrong
-
-  Revision 1.145  1999/08/26 21:17:39  peter
-    * fixed crash when childof was nil
-
-  Revision 1.144  1999/08/14 00:38:53  peter
-    * hack to support property with record fields
-
-  Revision 1.143  1999/08/09 22:19:53  peter
-    * classes vmt changed to only positive addresses
-    * sharedlib creation is working
-
-  Revision 1.142  1999/08/05 16:53:02  peter
-    * V_Fatal=1, all other V_ are also increased
-    * Check for local procedure when assigning procvar
-    * fixed comment parsing because directives
-    * oldtp mode directives better supported
-    * added some messages to errore.msg
-
-  Revision 1.141  1999/08/04 13:02:51  jonas
-    * all tokens now start with an underscore
-    * PowerPC compiles!!
-
-  Revision 1.140  1999/08/04 00:23:11  florian
-    * renamed i386asm and i386base to cpuasm and cpubase
-
-  Revision 1.139  1999/08/03 22:02:56  peter
-    * moved bitmask constants to sets
-    * some other type/const renamings
-
-  Revision 1.138  1999/08/01 18:28:11  florian
-    * modifications for the new code generator
-
-  Revision 1.137  1999/07/29 20:54:02  peter
-    * write .size also
-
-  Revision 1.136  1999/07/27 23:42:11  peter
-    * indirect type referencing is now allowed
-
-  Revision 1.135  1999/07/23 16:05:23  peter
-    * alignment is now saved in the symtable
-    * C alignment added for records
-    * PPU version increased to solve .12 <-> .13 probs
-
-  Revision 1.134  1999/07/22 09:37:50  florian
-    + resourcestring implemented
-    + start of longstring support
-
-  Revision 1.133  1999/07/16 10:04:34  peter
-    * merged
-
-  Revision 1.132  1999/07/11 21:24:31  michael
-  + Fixed integer message table
-
-  Revision 1.131  1999/07/06 21:48:23  florian
-    * a lot bug fixes:
-       - po_external isn't any longer necessary for procedure compatibility
-       - m_tp_procvar is in -Sd now available
-       - error messages of procedure variables improved
-       - return values with init./finalization fixed
-       - data types with init./finalization aren't any longer allowed in variant
-         record
-
-  Revision 1.130  1999/07/05 20:25:39  peter
-    * merged
-
-  Revision 1.129  1999/07/02 13:02:26  peter
-    * merged
-
-  Revision 1.128  1999/06/30 22:16:19  florian
-    * use of is_ordinal checked: often a qword/int64 isn't allowed (case/for ...)
-    * small qword problems fixed
-
-  Revision 1.127.2.4  1999/07/11 21:48:01  michael
-  + merged dispatch fix
-
-  Revision 1.127.2.3  1999/07/07 07:53:22  michael
-  + Merged patches from florian
-
-  Revision 1.127.2.2  1999/07/05 20:03:27  peter
-    * removed warning/notes
-
-  Revision 1.127.2.1  1999/07/02 12:59:49  peter
-    * fixed parsing of message directive
-
-  Revision 1.127  1999/06/02 22:44:10  pierre
-   * previous wrong log corrected
-
-  Revision 1.126  1999/06/02 22:25:42  pierre
-  * changed $ifdef FPC @ into $ifndef TP
-
-  Revision 1.125  1999/06/01 19:27:53  peter
-    * better checks for procvar and methodpointer
-
-  Revision 1.124  1999/06/01 14:45:51  peter
-    * @procvar is now always needed for FPC
-
-  Revision 1.123  1999/05/27 19:44:45  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.122  1999/05/21 20:08:22  florian
-    * hopefully the default property bug fixed
-
-  Revision 1.121  1999/05/21 13:55:04  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.120  1999/05/20 22:19:52  pierre
-   * better stabs line info for vars
-
-  Revision 1.119  1999/05/19 12:41:56  florian
-    * made source compilable with TP (too long line)
-    * default values for set properties fixed
-
-  Revision 1.118  1999/05/18 14:15:51  peter
-    * containsself fixes
-    * checktypes()
-
-  Revision 1.117  1999/05/17 21:57:12  florian
-    * new temporary ansistring handling
-
-  Revision 1.116  1999/05/13 21:59:34  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.115  1999/05/07 10:36:09  peter
-    * fixed crash
-
-  Revision 1.114  1999/05/04 21:44:54  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.113  1999/05/01 13:24:30  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.112  1999/04/28 06:02:07  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.111  1999/04/26 13:31:37  peter
-    * release storenumber,double_checksum
-
-  Revision 1.110  1999/04/25 22:42:16  pierre
-   + code for initialized vars in Delphi mode
-
-  Revision 1.109  1999/04/21 09:43:45  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.108  1999/04/17 13:16:19  peter
-    * fixes for storenumber
-
-  Revision 1.107  1999/04/14 09:14:50  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.106  1999/04/07 15:31:15  pierre
-    * all formaldefs are now a sinlge definition
-      cformaldef (this was necessary for double_checksum)
-    + small part of double_checksum code
-
-  Revision 1.105  1999/03/26 00:05:34  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.104  1999/03/24 23:17:13  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.103  1999/03/22 22:10:25  florian
-    * typecanbeforward wasn't always restored in object_dec which
-      sometimes caused strange effects
-
-  Revision 1.102  1999/03/05 01:14:26  pierre
-    * bug0198 : call conventions for methods
-      not yet implemented is the control of same calling convention
-      for virtual and child's virtual
-    * msgstr and msgint only created if message was found
-      who implemented this by the way ?
-      it leaks lots of plabels !!!! (check with heaptrc !)
-
-  Revision 1.101  1999/02/25 21:02:41  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.100  1999/02/24 00:59:14  peter
-    * small updates for ag386bin
-
-  Revision 1.99  1999/02/22 23:33:29  florian
-    + message directive for integers added
-
-  Revision 1.98  1999/02/22 20:13:36  florian
-    + first implementation of message keyword
-
-  Revision 1.97  1999/02/22 02:44:10  peter
-    * ag386bin doesn't use i386.pas anymore
-
-  Revision 1.96  1999/02/17 14:20:40  pierre
-   * Reference specific bug in recompiling unit solved
-
-  Revision 1.95  1999/01/25 20:13:48  peter
-    * fixed crash with forward declared class of ...
-
-  Revision 1.94  1999/01/19 12:17:00  peter
-    * fixed constant strings > 255 chars
-
-  Revision 1.93  1999/01/15 13:08:23  peter
-    * error if upper<lower in array decl
-
-  Revision 1.92  1999/01/14 21:49:58  peter
-    * fixed forwardpointer problem with multiple forwards for the same
-      typesym. It now uses a linkedlist instead of a single pointer
-
-  Revision 1.91  1998/12/30 22:15:46  peter
-    + farpointer type
-    * absolutesym now also stores if its far
-
-  Revision 1.90  1998/12/15 17:16:00  peter
-    * fixed const s : ^string
-    * first things for const pchar : @string[1]
-
-  Revision 1.89  1998/12/11 00:03:30  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.88  1998/11/30 09:43:20  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.87  1998/11/29 12:42:24  peter
-    * check for constants with array decl
-
-  Revision 1.86  1998/11/28 16:20:52  peter
-    + support for dll variables
-
-  Revision 1.85  1998/11/27 14:34:43  peter
-    * give error when string[0] decl is found
-
-  Revision 1.84  1998/11/17 10:40:15  peter
-    * H+ fixes
-
-  Revision 1.83  1998/11/16 11:28:59  pierre
-    * stackcheck removed for i386_win32
-    * exportlist does not crash at least !!
-      (was need for tests dir !)z
-
-  Revision 1.82  1998/11/16 10:18:07  peter
-    * fixes for ansistrings
-
-  Revision 1.81  1998/11/13 15:40:22  pierre
-    + added -Se in Makefile cvstest target
-    + lexlevel cleanup
-      normal_function_level main_program_level and unit_init_level defined
-    * tins_cache grown to A_EMMS (gave range check error in asm readers)
-      (test added in code !)
-    * -Un option was wrong
-    * _FAIL and _SELF only keyword inside
-      constructors and methods respectively
-
-  Revision 1.80  1998/11/13 10:18:09  peter
-    + nil constants
-
-  Revision 1.79  1998/11/05 12:02:51  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.78  1998/10/27 13:45:33  pierre
-    * classes get a vmt allways
-    * better error info (tried to remove
-      several error strings introduced by the tpexcept handling)
-
-  Revision 1.77  1998/10/26 22:58:20  florian
-    * new introduded problem with classes fix, the parent class wasn't set
-      correct, if the class was defined forward before
-
-  Revision 1.76  1998/10/25 23:31:18  peter
-    * procvar parsing updated just like psub.pas routine
-
-  Revision 1.75  1998/10/21 08:39:59  florian
-    + ansistring operator +
-    + $h and string[n] for n>255 added
-    * small problem with TP fixed
-
-  Revision 1.74  1998/10/20 13:09:13  peter
-    * fixed object(unknown) crash
-
-  Revision 1.73  1998/10/19 08:54:56  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.72  1998/10/16 13:12:51  pierre
-    * added vmt_offsets in destructors code also !!!
-    * vmt_offset code for m68k
-
-  Revision 1.71  1998/10/15 15:13:25  pierre
-    + added oo_hasconstructor and oo_hasdestructor
-      for objects options
-
-  Revision 1.70  1998/10/13 13:10:22  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.69  1998/10/09 12:07:49  pierre
-    * typo error for propertyparas dispose corrected
-
-  Revision 1.68  1998/10/09 11:47:54  pierre
-    * still more memory leaks fixes !!
-
-  Revision 1.67  1998/10/08 13:48:46  peter
-    * fixed memory leaks for do nothing source
-    * fixed unit interdependency
-
-  Revision 1.66  1998/10/06 20:43:31  peter
-    * fixed set of bugs. like set of false..true set of #1..#255 and
-      set of #1..true which was allowed
-
-  Revision 1.65  1998/10/05 22:43:35  peter
-    * commited the wrong file :(
-
-  Revision 1.64  1998/10/05 21:33:24  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.63  1998/10/05 13:57:13  peter
-    * crash preventions
-
-  Revision 1.62  1998/10/02 17:06:02  peter
-    * better error message for unresolved forward types
-
-  Revision 1.61  1998/10/02 09:23:24  peter
-    * fixed error msg with type l=<var>
-    * block_type bt_const is now set in read_const_dec
-
-  Revision 1.60  1998/09/30 07:40:33  florian
-    * better error recovering
-
-  Revision 1.59  1998/09/26 17:45:33  peter
-    + idtoken and only one token table
-
-  Revision 1.58  1998/09/25 00:04:01  florian
-    * problems when calling class methods fixed
-
-  Revision 1.57  1998/09/24 23:49:09  peter
-    + aktmodeswitches
-
-  Revision 1.56  1998/09/23 15:39:09  pierre
-    * browser bugfixes
-      was adding a reference when looking for the symbol
-      if -bSYM_NAME was used
-
-  Revision 1.55  1998/09/21 13:24:44  daniel
-  * Memory leak fixed.
-
-  Revision 1.54  1998/09/17 13:41:16  pierre
-  sizeof(TPOINT) problem
-
-  Revision 1.53.2.1  1998/09/17 13:12:09  pierre
-    * virtual destructor did not set oo_hasvirtual
-      (detected with the sizeof(TPoint) problem
-    * genloadcallnode was missing
-
-  Revision 1.53  1998/09/09 11:50:52  pierre
-    * forward def are not put in record or objects
-    + added check for forwards also in record and objects
-    * dummy parasymtable for unit initialization removed from
-    symtable stack
-
-  Revision 1.52  1998/09/07 23:10:22  florian
-    * a lot of stuff fixed regarding rtti and publishing of properties,
-      basics should now work
-
-  Revision 1.51  1998/09/07 19:33:22  florian
-    + some stuff for property rtti added:
-       - NameIndex of the TPropInfo record is now written correctly
-       - the DEFAULT/NODEFAULT keyword is supported now
-       - the default value and the storedsym/def are now written to
-         the PPU fiel
-
-  Revision 1.50  1998/09/07 18:46:08  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.49  1998/09/07 17:37:00  florian
-    * first fixes for published properties
-
-  Revision 1.48  1998/09/04 08:42:02  peter
-    * updated some error messages
-
-  Revision 1.47  1998/09/03 16:03:18  florian
-    + rtti generation
-    * init table generation changed
-
-  Revision 1.46  1998/09/01 17:39:48  peter
-    + internal constant functions
-
-  Revision 1.45  1998/08/31 12:20:28  peter
-    * fixed array_dec when unknown type was used
-
-  Revision 1.44  1998/08/28 10:57:01  peter
-    * removed warnings
-
-  Revision 1.43  1998/08/25 13:09:25  pierre
-    * corrected mangling sheme :
-      cvar add Cprefix to the mixed case name whereas
-      export or public use direct name
-
-  Revision 1.42  1998/08/25 12:42:41  pierre
-    * CDECL changed to CVAR for variables
-      specifications are read in structures also
-    + started adding GPC compatibility mode ( option  -Sp)
-    * names changed to lowercase
-
-  Revision 1.41  1998/08/23 21:04:36  florian
-    + rtti generation for classes added
-    + new/dispose do now also a call to INITIALIZE/FINALIZE, if necessaray
-
-  Revision 1.40  1998/08/21 15:48:58  pierre
-    * more cdecl chagnes
-      - better line info
-      - changes the definition options of a procvar
-        if it is a unnamed type
-
-  Revision 1.39  1998/08/19 00:42:40  peter
-    + subrange types for enums
-    + checking for bounds type with ranges
-
-  Revision 1.38  1998/08/12 19:20:39  peter
-    + public is the same as export for c_vars
-    * a exported/public c_var incs now the refcount
-
-  Revision 1.37  1998/08/11 15:31:38  peter
-    * write extended to ppu file
-    * new version 0.99.7
-
-  Revision 1.36  1998/08/10 14:50:09  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.35  1998/07/26 21:59:00  florian
-   + better support for switch $H
-   + index access to ansi strings added
-   + assigment of data (records/arrays) containing ansi strings
-
-  Revision 1.34  1998/07/20 22:17:15  florian
-    * hex constants in numeric char (#$54#$43 ...) are now allowed
-    * there was a bug in record_var_dec which prevents the used
-      of nested variant records (for example drivers.tevent of tv)
-
-  Revision 1.33  1998/07/18 17:11:11  florian
-    + ansi string constants fixed
-    + switch $H partial implemented
-
-  Revision 1.32  1998/07/14 21:46:50  peter
-    * updated messages file
-
-  Revision 1.31  1998/07/14 14:46:53  peter
-    * released NEWINPUT
-
-  Revision 1.30  1998/07/10 00:00:00  peter
-    * fixed ttypesym bug finally
-    * fileinfo in the symtable and better using for unused vars
-
-  Revision 1.29  1998/06/25 14:04:21  peter
-    + internal inc/dec
-
-  Revision 1.28  1998/06/24 12:26:45  peter
-    * stricter var parsing like tp7 and some optimizes with directive
-      parsing
-
-  Revision 1.27  1998/06/12 16:15:34  pierre
-    * external name 'C_var';
-      export name 'intern_C_var';
-      cdecl;
-      cdecl;external;
-      are now supported only with -Sv switch
-
-  Revision 1.25  1998/06/09 16:01:45  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.24  1998/06/05 14:37:32  pierre
-    * fixes for inline for operators
-    * inline procedure more correctly restricted
-
-  Revision 1.23  1998/06/04 23:51:50  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.22  1998/06/03 22:48:59  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.21  1998/06/03 22:14:19  florian
-    * problem with sizes of classes fixed (if the anchestor was declared
-      forward, the compiler doesn't update the child classes size)
-
-  Revision 1.20  1998/05/28 14:35:54  peter
-    * nicer error message when no id is used after var
-
-  Revision 1.19  1998/05/23 01:21:19  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.18  1998/05/20 09:42:35  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.17  1998/05/11 13:07:55  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.16  1998/05/05 12:05:42  florian
-    * problems with properties fixed
-    * crash fixed:  i:=l when i and l are undefined, was a problem with
-      implementation of private/protected
-
-  Revision 1.15  1998/05/01 09:01:23  florian
-    + correct semantics of private and protected
-    * small fix in variable scope:
-       a id can be used in a parameter list of a method, even it is used in
-       an anchestor class as field id
-
-  Revision 1.14  1998/05/01 07:43:56  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.13  1998/04/30 15:59:41  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.12  1998/04/29 10:33:57  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.11  1998/04/28 11:45:52  florian
-    * make it compilable with TP
-    + small COM problems solved to compile classes.pp
-
-  Revision 1.10  1998/04/27 23:10:28  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.9  1998/04/10 21:36:56  florian
-    + some stuff to support method pointers (procedure of object) added
-      (declaration, parameter handling)
-
-  Revision 1.8  1998/04/10 15:39:48  florian
-    * more fixes to get classes.pas compiled
-
-  Revision 1.7  1998/04/09 23:02:15  florian
-    * small problems solved to get remake3 work
-
-  Revision 1.6  1998/04/09 22:16:35  florian
-    * problem with previous REGALLOC solved
-    * improved property support
-
-  Revision 1.5  1998/04/08 14:59:20  florian
-    * problem with new expr_type solved
-
-  Revision 1.4  1998/04/08 10:26:09  florian
-    * correct error handling of virtual constructors
-    * problem with new type declaration handling fixed
-
-  Revision 1.3  1998/04/07 22:45:05  florian
-    * bug0092, bug0115 and bug0121 fixed
-    + packed object/class/array
-
-  Revision 1.2  1998/04/05 13:58:35  peter
-    * fixed the -Ss bug
-    + warning for Virtual constructors
-    * helppages updated with -TGO32V1
 }
 }

+ 4 - 532
compiler/pexpr.pas

@@ -2109,7 +2109,10 @@ _LECKKLAMMER : begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.153  1999-11-05 00:10:30  peter
+  Revision 1.154  1999-11-06 14:34:21  peter
+    * truncated log to 20 revs
+
+  Revision 1.153  1999/11/05 00:10:30  peter
     * fixed inherited with properties
     * fixed inherited with properties
 
 
   Revision 1.152  1999/10/27 16:06:19  peter
   Revision 1.152  1999/10/27 16:06:19  peter
@@ -2188,535 +2191,4 @@ end.
   Revision 1.134  1999/08/09 22:16:29  peter
   Revision 1.134  1999/08/09 22:16:29  peter
     * fixed crash after wrong para's with class contrustor
     * fixed crash after wrong para's with class contrustor
 
 
-  Revision 1.133  1999/08/05 16:53:04  peter
-    * V_Fatal=1, all other V_ are also increased
-    * Check for local procedure when assigning procvar
-    * fixed comment parsing because directives
-    * oldtp mode directives better supported
-    * added some messages to errore.msg
-
-  Revision 1.132  1999/08/04 13:49:45  florian
-    * new(...)^. is now allowed
-
-  Revision 1.131  1999/08/04 13:02:55  jonas
-    * all tokens now start with an underscore
-    * PowerPC compiles!!
-
-  Revision 1.130  1999/08/04 00:23:12  florian
-    * renamed i386asm and i386base to cpuasm and cpubase
-
-  Revision 1.129  1999/08/03 22:02:59  peter
-    * moved bitmask constants to sets
-    * some other type/const renamings
-
-  Revision 1.128  1999/08/03 13:50:17  michael
-  + Changes for alpha
-
-  Revision 1.127  1999/08/01 18:28:13  florian
-    * modifications for the new code generator
-
-  Revision 1.126  1999/07/30 12:28:40  peter
-    * fixed crash with unknown id and colon parameter in write
-
-  Revision 1.125  1999/07/27 23:42:14  peter
-    * indirect type referencing is now allowed
-
-  Revision 1.124  1999/07/23 21:31:42  peter
-    * fixed crash with resourcestring
-
-  Revision 1.123  1999/07/23 11:37:46  peter
-    * error for illegal type reference, instead of 10998
-
-  Revision 1.122  1999/07/22 09:37:52  florian
-    + resourcestring implemented
-    + start of longstring support
-
-  Revision 1.121  1999/07/16 10:04:35  peter
-    * merged
-
-  Revision 1.120  1999/07/06 22:38:11  florian
-    * another fix for TP/Delphi styled procedure variables
-
-  Revision 1.119  1999/07/05 20:13:16  peter
-    * removed temp defines
-
-  Revision 1.118  1999/07/01 21:33:57  peter
-    * merged
-
-  Revision 1.117  1999/06/30 15:43:20  florian
-    * two bugs regarding method variables fixed
-      - if you take in a method the address of another method
-        don't need self anymore
-      - if the class pointer was in a register, wrong code for a method
-        variable load was generated
-
-  Revision 1.116  1999/06/26 00:24:53  pierre
-   * mereg from fixes-0_99_12 branch
-
-  Revision 1.112.2.8  1999/07/16 09:54:57  peter
-    * @procvar support in tp7 mode works again
-
-  Revision 1.112.2.7  1999/07/07 07:53:10  michael
-  + Merged patches from florian
-
-  Revision 1.112.2.6  1999/07/01 21:31:59  peter
-    * procvar fixes again
-
-  Revision 1.112.2.5  1999/07/01 15:17:17  peter
-    * methoidpointer fixes from florian
-
-  Revision 1.112.2.4  1999/06/26 00:22:30  pierre
-   * wrong warnings in -So mode suppressed
-
-  Revision 1.112.2.3  1999/06/17 12:51:44  pierre
-   * changed is_assignment_overloaded into
-      function assignment_overloaded : pprocdef
-      to allow overloading of assignment with only different result type
-
-  Revision 1.112.2.2  1999/06/15 18:54:52  peter
-    * more procvar fixes
-
-  Revision 1.112.2.1  1999/06/13 22:38:09  peter
-    * tp_procvar check for loading of procvars when getaddr=false
-
-  Revision 1.112  1999/06/02 22:44:11  pierre
-   * previous wrong log corrected
-
-  Revision 1.111  1999/06/02 22:25:43  pierre
-  * changed $ifdef FPC @ into $ifndef TP
-  * changes for correct procvar handling under tp mode
-
-  Revision 1.110  1999/06/01 19:27:55  peter
-    * better checks for procvar and methodpointer
-
-  Revision 1.109  1999/05/27 19:44:46  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.108  1999/05/18 14:15:54  peter
-    * containsself fixes
-    * checktypes()
-
-  Revision 1.107  1999/05/18 09:52:18  peter
-    * procedure of object and addrn fixes
-
-  Revision 1.106  1999/05/16 17:06:31  peter
-    * remove firstcallparan which looks obsolete
-
-  Revision 1.105  1999/05/12 22:36:09  florian
-    * override isn't allowed in objects!
-
-  Revision 1.104  1999/05/07 10:35:23  florian
-    * first fix for a problem with method pointer properties, still doesn't work
-      with WITH
-
-  Revision 1.103  1999/05/06 21:40:16  peter
-    * fixed crash
-
-  Revision 1.101  1999/05/06 09:05:21  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.100  1999/05/04 21:44:57  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.99  1999/05/01 13:24:31  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.98  1999/04/26 18:29:56  peter
-    * farpointerdef moved into pointerdef.is_far
-
-  Revision 1.97  1999/04/19 09:27:48  peter
-    * removed my property fix
-
-  Revision 1.96  1999/04/19 09:13:47  peter
-    * class property without write support
-
-  Revision 1.95  1999/04/19 06:10:08  florian
-    * property problem fixed: a propertysym is only a write
-      access if it is followed by a assignment token
-
-  Revision 1.94  1999/04/17 13:12:17  peter
-    * addr() internal
-
-  Revision 1.93  1999/04/15 09:00:08  peter
-    * fixed property write
-
-  Revision 1.92  1999/04/08 20:59:43  florian
-    * fixed problem with default properties which are a class
-    * case bug (from the mailing list with -O2) fixed, the
-      distance of the case labels can be greater than the positive
-      range of a longint => it is now a dword for fpc
-
-  Revision 1.91  1999/04/06 11:21:56  peter
-    * more use of ttoken
-
-  Revision 1.90  1999/03/31 13:55:12  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.89  1999/03/26 00:05:36  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.88  1999/03/24 23:17:15  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.87  1999/03/16 17:52:52  jonas
-    * changes for internal Val code (do a "make cycle OPT=-dvalintern" to test)
-    * in cgi386inl: also range checking for subrange types (compile with "-dreadrangecheck")
-    * in cgai386: also small fixes to emitrangecheck
-
-  Revision 1.86  1999/03/04 13:55:44  pierre
-    * some m68k fixes (still not compilable !)
-    * new(tobj) does not give warning if tobj has no VMT !
-
-  Revision 1.85  1999/02/22 15:09:39  florian
-    * behaviaor of PROTECTED and PRIVATE fixed, works now like TP/Delphi
-
-  Revision 1.84  1999/02/22 02:15:26  peter
-    * updates for ag386bin
-
-  Revision 1.83  1999/02/11 09:46:25  pierre
-    * fix for normal method calls inside static methods :
-      WARNING there were both parser and codegen errors !!
-      added static_call boolean to calln tree
-
-  Revision 1.82  1999/01/28 14:06:47  florian
-    * small fix for method pointers
-    * found the annoying strpas bug, mainly nested call to type cast which
-      use ansistrings crash
-
-  Revision 1.81  1999/01/27 00:13:55  florian
-    * "procedure of object"-stuff fixed
-
-  Revision 1.80  1999/01/21 16:41:01  pierre
-   * fix for constructor inside with statements
-
-  Revision 1.79  1998/12/30 22:15:48  peter
-    + farpointer type
-    * absolutesym now also stores if its far
-
-  Revision 1.78  1998/12/11 00:03:32  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.77  1998/12/04 10:18:09  florian
-    * some stuff for procedures of object added
-    * bug with overridden virtual constructors fixed (reported by Italo Gomes)
-
-  Revision 1.76  1998/11/27 14:50:40  peter
-    + open strings, $P switch support
-
-  Revision 1.75  1998/11/25 19:12:51  pierre
-    * var:=new(pointer_type) support added
-
-  Revision 1.74  1998/11/13 10:18:11  peter
-    + nil constants
-
-  Revision 1.73  1998/11/05 12:02:52  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.72  1998/11/04 10:11:41  peter
-    * ansistring fixes
-
-  Revision 1.71  1998/10/22 23:57:29  peter
-    * fixed filedef for typenodetype
-
-  Revision 1.70  1998/10/21 15:12:54  pierre
-    * bug fix for IOCHECK inside a procedure with iocheck modifier
-    * removed the GPF for unexistant overloading
-      (firstcall was called with procedinition=nil !)
-    * changed typen to what Florian proposed
-      gentypenode(p : pdef) sets the typenodetype field
-      and resulttype is only set if inside bt_type block !
-
-  Revision 1.69  1998/10/20 15:10:19  pierre
-    * type ptree only allowed inside expression
-      if following sizeof typeof low high or as first arg of new !!
-
-  Revision 1.68  1998/10/20 11:15:44  pierre
-   * calling of private method allowed inside child object method
-
-  Revision 1.67  1998/10/19 08:54:57  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.66  1998/10/15 15:13:28  pierre
-    + added oo_hasconstructor and oo_hasdestructor
-      for objects options
-
-  Revision 1.65  1998/10/13 13:10:24  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.64  1998/10/12 12:20:55  pierre
-    + added tai_const_symbol_offset
-      for r : pointer = @var.field;
-    * better message for different arg names on implementation
-      of function
-
-  Revision 1.63  1998/10/12 10:28:30  florian
-    + auto dereferencing of pointers to structured types in delphi mode
-
-  Revision 1.62  1998/10/12 10:05:41  peter
-    * fixed mem leak with arrayconstrutor
-
-  Revision 1.61  1998/10/05 13:57:15  peter
-    * crash preventions
-
-  Revision 1.60  1998/10/05 12:32:46  peter
-    + assert() support
-
-  Revision 1.59  1998/10/01 14:56:24  peter
-    * crash preventions
-
-  Revision 1.58  1998/09/30 07:40:35  florian
-    * better error recovering
-
-  Revision 1.57  1998/09/28 16:18:16  florian
-    * two fixes to get ansi strings work
-
-  Revision 1.56  1998/09/26 17:45:36  peter
-    + idtoken and only one token table
-
-  Revision 1.55  1998/09/24 23:49:10  peter
-    + aktmodeswitches
-
-  Revision 1.54  1998/09/23 15:46:39  florian
-    * problem with with and classes fixed
-
-  Revision 1.53  1998/09/23 09:58:54  peter
-    * first working array of const things
-
-  Revision 1.52  1998/09/20 09:38:45  florian
-    * hasharray for defs fixed
-    * ansistring code generation corrected (init/final, assignement)
-
-  Revision 1.51  1998/09/18 16:03:43  florian
-    * some changes to compile with Delphi
-
-  Revision 1.50  1998/09/17 13:41:18  pierre
-  sizeof(TPOINT) problem
-
-  Revision 1.49.2.1  1998/09/17 08:42:31  pierre
-  TPOINT sizeof fix
-
-  Revision 1.49  1998/09/09 11:50:53  pierre
-    * forward def are not put in record or objects
-    + added check for forwards also in record and objects
-    * dummy parasymtable for unit initialization removed from
-    symtable stack
-
-  Revision 1.48  1998/09/07 22:25:53  peter
-    * fixed str(boolean,string) which was allowed
-    * fixed write(' ':<int expression>) only constants where allowed :(
-
-  Revision 1.47  1998/09/07 18:46:10  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.46  1998/09/04 08:42:03  peter
-    * updated some error messages
-
-  Revision 1.45  1998/09/01 17:39:49  peter
-    + internal constant functions
-
-  Revision 1.44  1998/08/28 10:54:24  peter
-    * fixed smallset generation from elements, it has never worked before!
-
-  Revision 1.43  1998/08/23 16:07:24  florian
-    * internalerror with mod/div fixed
-
-  Revision 1.42  1998/08/21 14:08:50  pierre
-    + TEST_FUNCRET now default (old code removed)
-      works also for m68k (at least compiles)
-
-  Revision 1.41  1998/08/20 21:36:39  peter
-    * fixed 'with object do' bug
-
-  Revision 1.40  1998/08/20 09:26:41  pierre
-    + funcret setting in underproc testing
-      compile with _dTEST_FUNCRET
-
-  Revision 1.39  1998/08/18 16:48:48  pierre
-    * bug for -So proc assignment to p^rocvar fixed
-
-  Revision 1.38  1998/08/18 14:17:09  pierre
-    * bug about assigning the return value of a function to
-      a procvar fixed : warning
-      assigning a proc to a procvar need @ in FPC mode !!
-    * missing file/line info restored
-
-  Revision 1.37  1998/08/18 09:24:43  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.36  1998/08/15 16:50:29  peter
-    * fixed proc()=expr which was not allowed anymore by my previous fix
-
-  Revision 1.35  1998/08/14 18:18:46  peter
-    + dynamic set contruction
-    * smallsets are now working (always longint size)
-
-  Revision 1.34  1998/08/13 11:00:12  peter
-    * fixed procedure<>procedure construct
-
-  Revision 1.33  1998/08/11 15:31:39  peter
-    * write extended to ppu file
-    * new version 0.99.7
-
-  Revision 1.32  1998/08/11 14:05:32  peter
-    * fixed sizeof(array of char)
-
-  Revision 1.31  1998/08/10 14:50:11  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.30  1998/07/28 21:52:54  florian
-    + implementation of raise and try..finally
-    + some misc. exception stuff
-
-  Revision 1.29  1998/07/27 21:57:13  florian
-    * fix to allow tv like stream registration:
-        @tmenu.load doesn't work if load had parameters or if load was only
-        declared in an anchestor class of tmenu
-
-  Revision 1.28  1998/07/14 21:46:51  peter
-    * updated messages file
-
-  Revision 1.27  1998/06/25 14:04:23  peter
-    + internal inc/dec
-
-  Revision 1.26  1998/06/09 16:01:46  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.25  1998/06/05 14:37:33  pierre
-    * fixes for inline for operators
-    * inline procedure more correctly restricted
-
-  Revision 1.24  1998/06/04 23:51:52  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.23  1998/06/04 09:55:40  pierre
-    * demangled name of procsym reworked to become independant of the mangling scheme
-
-  Revision 1.22  1998/06/02 17:03:03  pierre
-    *  with node corrected for objects
-    * small bugs for SUPPORT_MMX fixed
-
-  Revision 1.21  1998/05/27 19:45:05  peter
-    * symtable.pas splitted into includefiles
-    * symtable adapted for $ifdef NEWPPU
-
-  Revision 1.20  1998/05/26 07:53:59  pierre
-    * bug fix for empty sets (nil pd was dereferenced )
-
-  Revision 1.19  1998/05/25 17:11:43  pierre
-    * firstpasscount bug fixed
-      now all is already set correctly the first time
-      under EXTDEBUG try -gp to skip all other firstpasses
-      it works !!
-    * small bug fixes
-      - for smallsets with -dTESTSMALLSET
-      - some warnings removed (by correcting code !)
-
-  Revision 1.18  1998/05/23 01:21:20  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.17  1998/05/22 12:37:03  carl
-    * crash bugfix (patched msanually to main branch)
-
-  Revision 1.16  1998/05/21 19:33:32  peter
-    + better procedure directive handling and only one table
-
-  Revision 1.15  1998/05/20 09:42:35  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.14  1998/05/11 13:07:56  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.13  1998/05/06 08:38:45  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.12  1998/05/05 12:05:42  florian
-    * problems with properties fixed
-    * crash fixed:  i:=l when i and l are undefined, was a problem with
-      implementation of private/protected
-
-  Revision 1.11  1998/05/04 11:22:26  florian
-    * problem with DOM solved: it crashes when accessing a property in a method
-
-  Revision 1.10  1998/05/01 16:38:45  florian
-    * handling of private and protected fixed
-    + change_keywords_to_tp implemented to remove
-      keywords which aren't supported by tp
-    * break and continue are now symbols of the system unit
-    + widestring, longstring and ansistring type released
-
-  Revision 1.9  1998/04/29 10:33:58  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.8  1998/04/14 23:27:03  florian
-    + exclude/include with constant second parameter added
-
-  Revision 1.7  1998/04/09 23:02:15  florian
-    * small problems solved to get remake3 work
-
-  Revision 1.6  1998/04/09 22:16:35  florian
-    * problem with previous REGALLOC solved
-    * improved property support
-
-  Revision 1.5  1998/04/08 10:26:09  florian
-    * correct error handling of virtual constructors
-    * problem with new type declaration handling fixed
-
-  Revision 1.4  1998/04/07 22:45:05  florian
-    * bug0092, bug0115 and bug0121 fixed
-    + packed object/class/array
-
-  Revision 1.3  1998/04/07 13:19:46  pierre
-    * bugfixes for reset_gdb_info
-      in MEM parsing for go32v2
-      better external symbol creation
-      support for rhgdb.exe (lowercase file names)
 }
 }

+ 4 - 575
compiler/pmodules.pas

@@ -1446,7 +1446,10 @@ unit pmodules;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.161  1999-11-02 15:06:57  peter
+  Revision 1.162  1999-11-06 14:34:22  peter
+    * truncated log to 20 revs
+
+  Revision 1.161  1999/11/02 15:06:57  peter
     * import library fixes for win32
     * import library fixes for win32
     * alignment works again
     * alignment works again
 
 
@@ -1522,578 +1525,4 @@ end.
       (relocatable DLL are stripped because the relocation
       (relocatable DLL are stripped because the relocation
        of the .Stab section is misplaced by ldw)
        of the .Stab section is misplaced by ldw)
 
 
-  Revision 1.141  1999/08/11 17:26:36  peter
-    * tlinker object is now inherited for win32 and dos
-    * postprocessexecutable is now a method of tlinker
-
-  Revision 1.140  1999/08/04 13:02:57  jonas
-    * all tokens now start with an underscore
-    * PowerPC compiles!!
-
-  Revision 1.139  1999/08/04 00:23:15  florian
-    * renamed i386asm and i386base to cpuasm and cpubase
-
-  Revision 1.138  1999/08/03 22:03:02  peter
-    * moved bitmask constants to sets
-    * some other type/const renamings
-
-  Revision 1.137  1999/08/03 17:09:38  florian
-    * the alpha compiler can be compiled now
-
-  Revision 1.136  1999/08/02 17:17:10  florian
-    * small changes for the new code generator
-
-  Revision 1.135  1999/07/29 20:54:04  peter
-    * write .size also
-
-  Revision 1.134  1999/07/26 09:42:11  florian
-    * bugs 494-496 fixed
-
-  Revision 1.133  1999/07/24 00:13:25  peter
-    * also number units for program
-
-  Revision 1.132  1999/07/23 11:37:48  peter
-    * error for illegal type reference, instead of 10998
-
-  Revision 1.131  1999/07/22 09:37:54  florian
-    + resourcestring implemented
-    + start of longstring support
-
-  Revision 1.130  1999/07/14 21:19:11  florian
-    + implemented a better error message if a PPU file isn't found as suggested
-      by Lee John
-
-  Revision 1.129  1999/07/06 21:48:24  florian
-    * a lot bug fixes:
-       - po_external isn't any longer necessary for procedure compatibility
-       - m_tp_procvar is in -Sd now available
-       - error messages of procedure variables improved
-       - return values with init./finalization fixed
-       - data types with init./finalization aren't any longer allowed in variant
-         record
-
-  Revision 1.128  1999/07/06 00:53:48  peter
-    * merged
-
-  Revision 1.127  1999/07/05 16:21:27  peter
-    * fixed linking for units without linking necessary
-
-  Revision 1.126  1999/07/03 00:29:56  peter
-    * new link writing to the ppu, one .ppu is needed for all link types,
-      static (.o) is now always created also when smartlinking is used
-
-  Revision 1.125  1999/06/15 13:57:32  peter
-    * merged
-
-  Revision 1.124.2.2  1999/07/06 00:47:52  peter
-    * killed recompile bug
-
-  Revision 1.124.2.1  1999/06/15 13:54:26  peter
-    * don't run ar anymore for binary writer, also not with -CS
-
-  Revision 1.124  1999/05/27 19:44:48  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.123  1999/05/21 13:55:06  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.122  1999/05/18 22:36:29  pierre
-   * little redondant code removed
-
-  Revision 1.121  1999/05/17 14:43:54  pierre
-   * reset current_ppu to nil when appropriate
-
-  Revision 1.120  1999/05/13 21:59:35  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.119  1999/05/09 11:38:08  peter
-    * don't write .o and link if errors occure during assembling
-
-  Revision 1.118  1999/05/03 18:03:28  peter
-    * no ar.exe running field in target_asm
-
-  Revision 1.117  1999/05/01 13:24:32  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.116  1999/04/26 23:22:42  peter
-    * fixed double .o file insertion
-
-  Revision 1.115  1999/04/26 18:29:58  peter
-    * farpointerdef moved into pointerdef.is_far
-
-  Revision 1.114  1999/04/26 13:31:39  peter
-    * release storenumber,double_checksum
-
-  Revision 1.113  1999/04/25 17:32:14  peter
-    * fixed double_checksum
-
-  Revision 1.112  1999/04/25 15:08:38  peter
-    * small fixes for double_checksum
-
-  Revision 1.111  1999/04/21 09:43:46  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.110  1999/04/17 13:14:52  peter
-    * concat_external added for new init/final
-
-  Revision 1.109  1999/04/15 12:19:59  peter
-    + finalization support
-
-  Revision 1.108  1999/04/14 09:14:52  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.107  1999/04/08 10:53:54  michael
-  * Fixed forgotten ;
-
-  Revision 1.106  1999/04/07 15:39:30  pierre
-    + double_checksum code added
-
-  Revision 1.105  1999/03/26 00:05:38  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.104  1999/03/24 23:17:17  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.103  1999/03/18 20:30:46  peter
-    + .a writer
-
-  Revision 1.102  1999/03/16 21:07:25  peter
-    * check for dup uses
-
-  Revision 1.101  1999/02/25 21:02:43  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.100  1999/02/23 18:29:20  pierre
-    * win32 compilation error fix
-    + some work for local browser (not cl=omplete yet)
-
-  Revision 1.99  1999/02/22 13:06:58  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.98  1999/02/22 02:15:29  peter
-    * updates for ag386bin
-
-  Revision 1.97  1999/02/16 00:45:31  peter
-    * fixed crashes by forgotten strpnew() for init_symbol
-
-  Revision 1.96  1999/02/05 08:54:27  pierre
-    + linkofiles splitted inot linkofiles and linkunitfiles
-      because linkofiles must be stored with directory
-      to enabled linking of different objects with same name
-      in a different directory
-
-  Revision 1.95  1999/02/03 09:44:36  pierre
-    * symbol nubering begins with 1 in number_symbols
-    * program tmodule has globalsymtable for its staticsymtable
-      (to get it displayed in IDE globals list)
-    + list of symbol (browcol) greatly improved for IDE
-
-  Revision 1.94  1999/01/12 14:25:31  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.93  1999/01/06 12:39:46  peter
-    * renamed resource -> comprsrc (conflicted with FV)
-
-  Revision 1.92  1998/12/28 23:26:23  peter
-    + resource file handling ($R directive) for Win32
-
-  Revision 1.91  1998/12/15 17:14:17  peter
-    * fix for tp7
-
-  Revision 1.90  1998/12/15 10:23:26  peter
-    + -iSO, -iSP, -iTO, -iTP
-
-  Revision 1.89  1998/12/11 00:03:34  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.88  1998/12/08 10:18:11  peter
-    + -gh for heaptrc unit
-
-  Revision 1.87  1998/12/01 23:40:53  pierre
-   * new try for correct debug info generation
-
-  Revision 1.86  1998/11/30 09:43:22  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.85  1998/11/28 16:20:54  peter
-    + support for dll variables
-
-  Revision 1.84  1998/11/18 09:18:03  pierre
-    + automatic loading of profile unit with -pg option
-      in go32v2 mode (also defines FPC_PROFILE)
-    * some memory leaks removed
-    * unreleased temp problem with sets solved
-
-  Revision 1.83  1998/11/16 11:29:00  pierre
-    * stackcheck removed for i386_win32
-    * exportlist does not crash at least !!
-      (was need for tests dir !)z
-
-  Revision 1.82  1998/11/12 12:55:16  pierre
-   * fix for bug0176 and bug0177
-
-  Revision 1.81  1998/11/12 11:34:58  peter
-    * fix for empty .o files and linking of libs
-
-  Revision 1.80  1998/11/06 09:48:14  pierre
-   * double initialization code calling bug fixed
-
-  Revision 1.79  1998/11/03 11:33:11  peter
-    + search_unit arg to only search for sources
-
-  Revision 1.78  1998/10/30 12:23:41  peter
-    * fix for lognunitname and longunit.pas
-
-  Revision 1.77  1998/10/29 11:35:52  florian
-    * some dll support for win32
-    * fixed assembler writing for PalmOS
-
-  Revision 1.76  1998/10/28 18:26:15  pierre
-   * removed some erros after other errors (introduced by useexcept)
-   * stabs works again correctly (for how long !)
-
-  Revision 1.75  1998/10/27 13:45:35  pierre
-    * classes get a vmt allways
-    * better error info (tried to remove
-      several error strings introduced by the tpexcept handling)
-
-  Revision 1.74  1998/10/26 09:34:50  peter
-    * unit check name works now for all units, not only systemunit
-
-  Revision 1.73  1998/10/22 23:53:27  peter
-    * leave when an error has been in the interface (else other units could
-      be compiled with the implementation uses!)
-    * don't always compile when not in implementation with a second_load
-
-  Revision 1.72  1998/10/22 11:36:34  peter
-    * fixed imports generation at the wrong place
-
-  Revision 1.71  1998/10/21 20:13:10  peter
-    * check for importsection for empty asm file
-
-  Revision 1.70  1998/10/20 09:30:05  peter
-    * set also in_library flag when no .o is generated
-
-  Revision 1.68  1998/10/19 08:54:59  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.67  1998/10/13 13:10:25  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.66  1998/10/09 16:36:05  pierre
-    * some memory leaks specific to usebrowser define fixed
-    * removed tmodule.implsymtable (was like tmodule.localsymtable)
-
-  Revision 1.65  1998/10/09 14:38:55  pierre
-   * add a second load for PPU file
-
-  Revision 1.64  1998/10/09 08:56:28  pierre
-    * several memory leaks fixed
-
-  Revision 1.63  1998/10/08 23:29:01  peter
-    * -vu shows unit info, -vt shows tried/used files
-
-  Revision 1.62  1998/10/08 17:17:25  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.61  1998/10/08 13:48:47  peter
-    * fixed memory leaks for do nothing source
-    * fixed unit interdependency
-
-  Revision 1.60  1998/10/06 17:16:54  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.59  1998/10/05 21:33:26  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.58  1998/09/30 16:43:37  peter
-    * fixed unit interdependency with circular uses
-
-  Revision 1.57  1998/09/30 12:11:52  peter
-    * fixed circular uses which looped forever
-
-  Revision 1.56  1998/09/28 11:22:15  pierre
-   * did not compile for browser
-   * merge from fixes
-
-
-  Revision 1.48.2.1  1998/09/28 10:55:16  pierre
-  fix for current_module dispose bug
-
-  Revision 1.55  1998/09/28 11:04:03  peter
-    * fixed loaddefaultunits which was at the wrong place for programs, so
-      the default defs were not loaded when main was initialized
-
-  Revision 1.54  1998/09/24 23:49:12  peter
-    + aktmodeswitches
-
-  Revision 1.53  1998/09/23 12:20:50  pierre
-    * main program tmodule had no symtable (crashed browser)
-    * unit symbols problem fixed !!
-
-  Revision 1.52  1998/09/22 17:13:49  pierre
-    + browsing updated and developed
-      records and objects fields are also stored
-
-  Revision 1.51  1998/09/22 15:40:55  peter
-    * some extra ifdef GDB
-
-  Revision 1.50  1998/09/21 08:45:17  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.49  1998/09/18 08:01:36  pierre
-    + improvement on the usebrowser part
-      (does not work correctly for now)
-
-  Revision 1.48  1998/09/09 15:33:07  peter
-    * fixed in_global to allow directives also after interface token
-
-  Revision 1.47  1998/09/09 11:50:55  pierre
-    * forward def are not put in record or objects
-    + added check for forwards also in record and objects
-    * dummy parasymtable for unit initialization removed from
-    symtable stack
-
-  Revision 1.46  1998/09/03 11:24:01  peter
-    * moved more inputfile things from tscannerfile to tinputfile
-    * changed ifdef Sourceline to cs_asm_source
-
-  Revision 1.45  1998/08/31 12:26:28  peter
-    * m68k and palmos updates from surebugfixes
-
-  Revision 1.44  1998/08/26 15:35:33  peter
-    * fixed scannerfiles for macros
-    + $I %<environment>%
-
-  Revision 1.43  1998/08/26 10:08:47  peter
-    * fixed problem with libprefix at the wrong place
-    * fixed lib generation with smartlinking and no -CS used
-
-  Revision 1.42  1998/08/19 18:04:54  peter
-    * fixed current_module^.in_implementation flag
-
-  Revision 1.41  1998/08/17 10:10:08  peter
-    - removed OLDPPU
-
-  Revision 1.40  1998/08/17 09:17:50  peter
-    * static/shared linking updates
-
-  Revision 1.39  1998/08/14 21:56:37  peter
-    * setting the outputfile using -o works now to create static libs
-
-  Revision 1.38  1998/08/10 14:50:13  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.37  1998/08/10 10:18:31  peter
-    + Compiler,Comphook unit which are the new interface units to the
-      compiler
-
-  Revision 1.36  1998/07/14 14:46:54  peter
-    * released NEWINPUT
-
-  Revision 1.35  1998/07/08 12:39:38  peter
-    * heap_size for m68k
-
-  Revision 1.34  1998/07/07 11:20:03  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.33  1998/06/25 11:15:34  pierre
-    * ppu files where not closed in newppu !!
-      second compilation was impossible due to too many opened files
-      (not visible in 'make cycle' as we remove all the ppu files)
-
-  Revision 1.32  1998/06/25 08:48:16  florian
-    * first version of rtti support
-
-  Revision 1.31  1998/06/24 14:48:35  peter
-    * ifdef newppu -> ifndef oldppu
-
-  Revision 1.30  1998/06/17 14:10:16  peter
-    * small os2 fixes
-    * fixed interdependent units with newppu (remake3 under linux works now)
-
-  Revision 1.29  1998/06/16 08:56:25  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.28  1998/06/13 00:10:10  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.27  1998/06/11 13:58:08  peter
-    * small fix to let newppu compile
-
-  Revision 1.26  1998/06/09 16:01:47  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.25  1998/06/08 22:59:49  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.24  1998/06/08 13:13:44  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.23  1998/06/05 17:47:29  peter
-    * some better uses clauses
-
-  Revision 1.22  1998/06/05 14:37:34  pierre
-    * fixes for inline for operators
-    * inline procedure more correctly restricted
-
-  Revision 1.21  1998/06/04 23:51:53  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.20  1998/06/04 09:55:42  pierre
-    * demangled name of procsym reworked to become independant of the mangling scheme
-
-  Revision 1.19  1998/06/03 23:40:38  peter
-    + unlimited file support, release tempclose
-
-  Revision 1.18  1998/06/03 22:49:00  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.17  1998/05/28 14:40:25  peter
-    * fixes for newppu, remake3 works now with it
-
-  Revision 1.16  1998/05/27 19:45:06  peter
-    * symtable.pas splitted into includefiles
-    * symtable adapted for $ifdef NEWPPU
-
-  Revision 1.15  1998/05/23 01:21:22  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.14  1998/05/20 09:42:35  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.13  1998/05/12 10:47:00  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.12  1998/05/11 13:07:56  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.11  1998/05/06 18:36:53  peter
-    * tai_section extended with code,data,bss sections and enumerated type
-    * ident 'compiled by FPC' moved to pmodules
-    * small fix for smartlink
-
-  Revision 1.10  1998/05/04 17:54:28  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.9  1998/05/01 16:38:45  florian
-    * handling of private and protected fixed
-    + change_keywords_to_tp implemented to remove
-      keywords which aren't supported by tp
-    * break and continue are now symbols of the system unit
-    + widestring, longstring and ansistring type released
-
-  Revision 1.8  1998/04/30 15:59:41  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.7  1998/04/29 10:33:59  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.6  1998/04/27 23:10:28  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.5  1998/04/14 23:27:03  florian
-    + exclude/include with constant second parameter added
-
-  Revision 1.4  1998/04/10 14:41:43  peter
-    * removed some Hints
-    * small speed optimization for AsmLn
-
-  Revision 1.3  1998/04/03 09:51:00  daniel
-  * Fixed heap allocation for OS/2.
 }
 }

+ 4 - 141
compiler/popt386.pas

@@ -1603,7 +1603,10 @@ End.
 
 
 {
 {
  $Log$
  $Log$
- Revision 1.66  1999-09-27 23:44:55  peter
+ Revision 1.67  1999-11-06 14:34:23  peter
+   * truncated log to 20 revs
+
+ Revision 1.66  1999/09/27 23:44:55  peter
    * procinfo is now a pointer
    * procinfo is now a pointer
    * support for result setting in sub procedure
    * support for result setting in sub procedure
 
 
@@ -1671,144 +1674,4 @@ End.
  Revision 1.49  1999/05/02 14:26:31  peter
  Revision 1.49  1999/05/02 14:26:31  peter
    * fixed dec -> sub $1 opt which didn't set ops=2
    * fixed dec -> sub $1 opt which didn't set ops=2
 
 
- Revision 1.48  1999/05/01 13:24:34  peter
-   * merged nasm compiler
-   * old asm moved to oldasm/
-
- Revision 1.5  1999/04/30 12:36:50  jonas
-   * fix from Brussels: call/jmp => push/jmp transformation didn't
-     count correctly the jmp references
-
- Revision 1.4  1999/04/10 16:14:11  peter
-   * fixed optimizer
-
- Revision 1.3  1999/04/09 08:33:18  peter
-   * fixed mov reg,treg;mov treg,x bug
-
- Revision 1.2  1999/03/29 16:05:51  peter
-   * optimizer working for ag386bin
-
- Revision 1.1  1999/03/26 00:01:15  peter
-   * first things for optimizer (compiles but cycle crashes)
-
- Revision 1.39  1999/02/26 00:48:22  peter
-   * assembler writers fixed for ag386bin
-
- Revision 1.38  1999/02/25 21:02:44  peter
-   * ag386bin updates
-   + coff writer
-
- Revision 1.37  1999/02/22 02:15:30  peter
-   * updates for ag386bin
-
- Revision 1.36  1999/01/04 22:04:15  jonas
-   + mov reg, mem1    to    mov reg, mem1
-      mov mem2, reg           cmp reg, mem2
-      cmp mem1, reg
-     # reg released
-
- Revision 1.35  1999/01/04 12:58:55  jonas
-   * no fistp/fild optimization for S_IQ (fistq doesn't exist)
-
- Revision 1.34  1998/12/29 18:48:17  jonas
-   + optimize pascal code surrounding assembler blocks
-
- Revision 1.33  1998/12/23 15:16:21  jonas
-   * change "inc x/dec x; test x, x"  to "add 1, x/sub 1,x" because inc and dec
-     don't affect the carry flag (test does). This *doesn't* fix the problem with
-    cardinal, that's a cg issue.
-
- Revision 1.32  1998/12/16 12:09:29  jonas
-   * fixed fistp/fild optimization
-
- Revision 1.31  1998/12/15 22:30:39  jonas
-   + change "sub/add const1, reg" or "dec reg" followed by "sub const2, reg" to one
-     "sub const3, reg"
-   * some small cleaning up
-
- Revision 1.30  1998/12/15 15:43:20  jonas
-   * fixed bug in shr/shl optimization
-
- Revision 1.29  1998/12/15 11:53:54  peter
-   * removed commentlevel
-
- Revision 1.28  1998/12/14 22:01:45  jonas
-   - removed $ifdef ver0_99_11's
-
- Revision 1.27  1998/12/11 00:03:35  peter
-   + globtype,tokens,version unit splitted from globals
-
- Revision 1.26  1998/12/09 18:16:13  jonas
-   * corrected small syntax error in part between ifdef ver0_99_11
-   + added fistp/fild optimization between ifdef ver0_99_11
-
- Revision 1.25  1998/12/02 16:23:29  jonas
-   * changed "if longintvar in set" to case or "if () or () .." statements
-   * tree.pas: changed inlinenumber (and associated constructor/vars) to a byte
-
- Revision 1.24  1998/11/26 15:41:45  jonas
-   + change "setxx mem; movb mem, reg8" to "setxx reg8" if mem is a local
-     variable/parameter or function result (between $ifdef ver0_99_11)
-
- Revision 1.23  1998/11/03 16:26:09  jonas
-   * "call x;jmp y" optimization not done anymore for P6 and equivalents
-   * made FPU optimizations simpler and more effective
-
- Revision 1.22  1998/10/29 18:37:55  jonas
-   + change "call x; jmp y" to "push y; jmp x" (suggestion from Daniel)
-
- Revision 1.19  1998/10/23 15:38:23  jonas
-   + some small FPU peephole optimizations (use value in FP regs instead of loading it
-      from memory if possible, mostly with var1+var1 and var1*var1)
-
- Revision 1.18  1998/10/05 14:41:14  jonas
-   * fixed small memory leak
-   * fixed small inefficiency
-   * tested multiple line comments ability of my new MacCVS client :)
-
- Revision 1.17  1998/10/02 17:29:56  jonas
-   + removal of "lea (reg), reg)", "imul $1, reg", change "mov reg1, reg2; mov (reg2), reg2" to "mov (reg1), reg2"
-
- Revision 1.16  1998/10/01 20:19:57  jonas
-   * moved UpdateUsedRegs (+ bugfix) to daopt386
-
- Revision 1.15  1998/09/30 12:18:29  peter
-   * fixed subl $2,esp;psuhw bug
-
- Revision 1.14  1998/09/20 17:11:51  jonas
-   * released REGALLOC
-
- Revision 1.13  1998/09/16 18:00:00  jonas
-   * optimizer now completely dependant on GetNext/GetLast instruction, works again with -dRegAlloc
-
- Revision 1.12  1998/09/15 14:05:22  jonas
-   * fixed optimizer incompatibilities with freelabel code in psub
-
- Revision 1.11  1998/08/28 10:57:02  peter
-   * removed warnings
-
- Revision 1.10  1998/08/27 15:17:50  florian
-   * reinstated Jonas' bugfix
-
- Revision 1.9  1998/08/25 16:58:59  pierre
-   * removed a line that add no sense and
-     introduce garbage in the asmlist
-     (uninitialized data !)
-
- Revision 1.7  1998/08/19 16:07:53  jonas
-   * changed optimizer switches + cleanup of DestroyRefs in daopt386.pas
-
- Revision 1.6  1998/08/10 14:50:14  peter
-   + localswitches, moduleswitches, globalswitches splitting
-
- Revision 1.5  1998/08/06 19:40:28  jonas
-   * removed $ before and after Log in comment
-
- Revision 1.4  1998/08/05 16:27:17  jonas
-   * fstp/fld bugfix (fstt does not exist)
-
- Revision 1.3  1998/08/05 16:00:15  florian
-   * some fixes for ansi strings
-   * log to Log changed
-
 }
 }

+ 4 - 122
compiler/pp.pas

@@ -273,7 +273,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.51  1999-11-05 13:15:00  florian
+  Revision 1.52  1999-11-06 14:34:23  peter
+    * truncated log to 20 revs
+
+  Revision 1.51  1999/11/05 13:15:00  florian
     * some fixes to get the new cg compiling again
     * some fixes to get the new cg compiling again
 
 
   Revision 1.50  1999/09/17 17:14:10  peter
   Revision 1.50  1999/09/17 17:14:10  peter
@@ -348,125 +351,4 @@ end.
   Revision 1.32  1998/10/02 17:03:51  peter
   Revision 1.32  1998/10/02 17:03:51  peter
     * ifdef heaptrc for heaptrc
     * ifdef heaptrc for heaptrc
 
 
-  Revision 1.31  1998/09/28 16:57:23  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.30  1998/09/24 23:49:13  peter
-    + aktmodeswitches
-
-  Revision 1.29  1998/09/17 09:42:41  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.28  1998/08/26 15:31:17  peter
-    * heapblocks for >0.99.5
-
-  Revision 1.27  1998/08/11 00:00:00  peter
-    * fixed dup log
-
-  Revision 1.26  1998/08/10 15:49:40  peter
-    * small fixes for 0.99.5
-
-  Revision 1.25  1998/08/10 14:50:16  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.24  1998/08/10 10:18:32  peter
-    + Compiler,Comphook unit which are the new interface units to the
-      compiler
-
-  Revision 1.23  1998/08/05 16:00:16  florian
-    * some fixes for ansi strings
-
-  Revision 1.22  1998/08/04 16:28:40  jonas
-  * added support for NoRa386* in the $O ... section
-
-  Revision 1.21  1998/07/18 17:11:12  florian
-    + ansi string constants fixed
-    + switch $H partial implemented
-
-  Revision 1.20  1998/07/14 14:46:55  peter
-    * released NEWINPUT
-
-  Revision 1.19  1998/07/07 11:20:04  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.18  1998/06/24 14:06:33  peter
-    * fixed the name changes
-
-  Revision 1.17  1998/06/23 08:59:22  daniel
-    * Recommitted.
-
-  Revision 1.16  1998/06/17 14:10:17  peter
-    * small os2 fixes
-    * fixed interdependent units with newppu (remake3 under linux works now)
-
-  Revision 1.15  1998/06/16 11:32:18  peter
-    * small cosmetic fixes
-
-  Revision 1.14  1998/06/15 13:43:45  daniel
-
-
-  * Updated overlays.
-
-  Revision 1.12  1998/05/23 01:21:23  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.11  1998/05/20 09:42:35  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.10  1998/05/12 10:47:00  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.9  1998/05/11 13:07:56  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.8  1998/05/08 09:21:57  michael
-  + Librarysearchpath is now a linker object field;
-
-  Revision 1.7  1998/05/04 17:54:28  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.6  1998/04/29 13:40:23  peter
-    + heapblocks:=true
-
-  Revision 1.5  1998/04/29 10:33:59  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.3  1998/04/21 10:16:48  peter
-    * patches from strasbourg
-    * objects is not used anymore in the fpc compiled version
-
-  Revision 1.2  1998/04/07 13:19:47  pierre
-    * bugfixes for reset_gdb_info
-      in MEM parsing for go32v2
-      better external symbol creation
-      support for rhgdb.exe (lowercase file names)
 }
 }

+ 4 - 128
compiler/ppu.pas

@@ -1000,7 +1000,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.46  1999-09-17 09:14:56  peter
+  Revision 1.47  1999-11-06 14:34:23  peter
+    * truncated log to 20 revs
+
+  Revision 1.46  1999/09/17 09:14:56  peter
     * ppu header writting now uses currentppuversion
     * ppu header writting now uses currentppuversion
 
 
   Revision 1.45  1999/09/16 13:27:08  pierre
   Revision 1.45  1999/09/16 13:27:08  pierre
@@ -1071,131 +1074,4 @@ end.
   Revision 1.27  1999/04/17 13:16:20  peter
   Revision 1.27  1999/04/17 13:16:20  peter
     * fixes for storenumber
     * fixes for storenumber
 
 
-  Revision 1.26  1999/04/07 15:39:31  pierre
-    + double_checksum code added
-
-  Revision 1.25  1999/03/02 13:49:18  peter
-    * renamed loadunit_int -> loadunit
-
-  Revision 1.24  1999/02/22 13:07:00  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.23  1999/02/16 00:48:24  peter
-    * save in the ppu if linked with obj file instead of using the
-      library flag, so the .inc files are also checked
-
-  Revision 1.22  1999/02/05 08:54:29  pierre
-    + linkofiles splitted inot linkofiles and linkunitfiles
-      because linkofiles must be stored with directory
-      to enabled linking of different objects with same name
-      in a different directory
-
-  Revision 1.21  1998/12/30 22:15:50  peter
-    + farpointer type
-    * absolutesym now also stores if its far
-
-  Revision 1.20  1998/11/30 16:34:45  pierre
-    * corrected problems with rangecheck
-    + added needed code for no rangecheck  in CRC32 functions in ppu unit
-    * enumdef lso need its rangenr reset to zero
-      when calling reset_global_defs
-
-  Revision 1.19  1998/11/16 15:41:42  peter
-    * tp7 didn't like my ifopt H+ :(
-
-  Revision 1.18  1998/11/16 12:18:03  peter
-    * H+ fixes
-
-  Revision 1.17  1998/10/14 10:45:08  pierre
-    * ppu problems for m68k fixed (at least in cross compiling)
-    * one last memory leak for sysamiga fixed
-    * the amiga RTL compiles now completely !!
-
-  Revision 1.16  1998/09/24 23:49:14  peter
-    + aktmodeswitches
-
-  Revision 1.15  1998/09/23 15:39:10  pierre
-    * browser bugfixes
-      was adding a reference when looking for the symbol
-      if -bSYM_NAME was used
-
-  Revision 1.14  1998/09/21 10:00:07  peter
-    * store number of defs in ppu file
-
-  Revision 1.13  1998/09/21 08:45:18  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.12  1998/09/18 08:01:37  pierre
-    + improvement on the usebrowser part
-      (does not work correctly for now)
-
-  Revision 1.11  1998/09/11 15:16:47  peter
-    * merge fixes
-
-  Revision 1.10.2.1  1998/09/11 15:15:04  peter
-    * fixed not in [] bug
-
-  Revision 1.10  1998/08/31 12:26:30  peter
-    * m68k and palmos updates from surebugfixes
-
-  Revision 1.9  1998/08/17 09:17:51  peter
-    * static/shared linking updates
-
-  Revision 1.8  1998/08/11 15:31:40  peter
-    * write extended to ppu file
-    * new version 0.99.7
-
-  Revision 1.7  1998/06/25 10:51:01  pierre
-    * removed a remaining ifndef NEWPPU
-      replaced by ifdef OLDPPU
-    * added uf_finalize to ppu unit
-
-  Revision 1.6  1998/06/16 08:56:26  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.5  1998/06/13 00:10:12  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.4  1998/06/09 16:01:48  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.3  1998/05/28 14:40:26  peter
-    * fixes for newppu, remake3 works now with it
-
-  Revision 1.2  1998/05/27 19:45:08  peter
-    * symtable.pas splitted into includefiles
-    * symtable adapted for $ifdef NEWPPU
-
-  Revision 1.1  1998/05/12 10:56:07  peter
-    + the ppufile object unit
-
 }
 }

+ 4 - 334
compiler/pstatmnt.pas

@@ -1320,7 +1320,10 @@ unit pstatmnt;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.105  1999-10-22 10:39:35  peter
+  Revision 1.106  1999-11-06 14:34:23  peter
+    * truncated log to 20 revs
+
+  Revision 1.105  1999/10/22 10:39:35  peter
     * split type reading from pdecl to ptype unit
     * split type reading from pdecl to ptype unit
     * parameter_dec routine is now used for procedure and procvars
     * parameter_dec routine is now used for procedure and procvars
 
 
@@ -1398,338 +1401,5 @@ end.
     * asmsymbol automaticly external
     * asmsymbol automaticly external
     * jumptables and other label fixes for asm readers
     * jumptables and other label fixes for asm readers
 
 
-  Revision 1.86  1999/05/21 13:55:08  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.85  1999/05/17 23:51:40  peter
-    * with temp vars now use a reference with a persistant temp instead
-      of setting datasize
-
-  Revision 1.84  1999/05/13 21:59:38  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.83  1999/05/05 22:21:58  peter
-    * updated messages
-
-  Revision 1.82  1999/05/01 13:24:35  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.81  1999/04/26 13:31:42  peter
-    * release storenumber,double_checksum
-
-  Revision 1.80  1999/04/21 09:43:48  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.79  1999/04/16 12:14:49  pierre
-   * void pointer accepted with warning in tp and delphi mode
-
-  Revision 1.78  1999/04/15 12:58:14  pierre
-   * fix for bug0234
-
-  Revision 1.77  1999/04/15 09:01:33  peter
-    * fixed set loading
-    * object inheritance support for browser
-
-  Revision 1.76  1999/04/14 18:41:25  daniel
-  * Better use of routines in pbase and symtable. 4k code removed.
-
-  Revision 1.75  1999/04/14 09:14:53  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.74  1999/04/09 12:22:06  pierre
-   * bug found by Peter for DirectWith code fixed
-
-  Revision 1.73  1999/04/06 11:21:57  peter
-    * more use of ttoken
-
-  Revision 1.72  1999/03/31 13:55:15  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.71  1999/03/10 11:23:29  pierre
-   * typecheck for exit(value) : resulttype was not set
-
-  Revision 1.70  1999/03/04 13:55:45  pierre
-    * some m68k fixes (still not compilable !)
-    * new(tobj) does not give warning if tobj has no VMT !
-
-  Revision 1.69  1999/03/02 02:56:15  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.68  1999/02/26 00:48:23  peter
-    * assembler writers fixed for ag386bin
-
-  Revision 1.67  1999/02/22 13:07:01  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.66  1999/02/22 02:15:31  peter
-    * updates for ag386bin
-
-  Revision 1.65  1999/02/15 13:13:15  pierre
-   * fix for bug0216
-
-  Revision 1.64  1999/02/11 09:46:26  pierre
-    * fix for normal method calls inside static methods :
-      WARNING there were both parser and codegen errors !!
-      added static_call boolean to calln tree
-
-  Revision 1.63  1999/02/09 15:45:47  florian
-    + complex results for assembler functions, fixes bug0155
-
-  Revision 1.62  1999/01/27 13:06:57  pierre
-   * memory leak in case optimization fixed
-
-  Revision 1.61  1999/01/25 22:49:09  peter
-    * more fixes for the on bug with unknown id
-
-  Revision 1.60  1999/01/23 23:29:38  florian
-    * first running version of the new code generator
-    * when compiling exceptions under Linux fixed
-
-  Revision 1.59  1999/01/21 16:41:02  pierre
-   * fix for constructor inside with statements
-
-  Revision 1.58  1999/01/05 08:20:07  florian
-    * mainly problem with invalid case ranges fixed (reported by Jonas)
-
-  Revision 1.57  1998/12/29 18:48:15  jonas
-    + optimize pascal code surrounding assembler blocks
-
-  Revision 1.56  1998/12/23 22:52:56  peter
-    * fixed new(x) crash if x contains an error
-
-  Revision 1.55  1998/12/16 12:30:59  jonas
-    * released CaseRange
-
-  Revision 1.54  1998/12/15 22:32:24  jonas
-    + convert consecutive case labels to a single range (-dCaseRange)
-
-  Revision 1.53  1998/12/15 11:52:18  peter
-    * fixed dup release of statement label in case
-
-  Revision 1.52  1998/12/11 00:03:37  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.51  1998/12/10 09:47:24  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.50  1998/11/13 15:40:25  pierre
-    + added -Se in Makefile cvstest target
-    + lexlevel cleanup
-      normal_function_level main_program_level and unit_init_level defined
-    * tins_cache grown to A_EMMS (gave range check error in asm readers)
-      (test added in code !)
-    * -Un option was wrong
-    * _FAIL and _SELF only keyword inside
-      constructors and methods respectively
-
-  Revision 1.49  1998/11/12 12:55:17  pierre
-   * fix for bug0176 and bug0177
-
-  Revision 1.48  1998/11/05 23:43:24  peter
-    * fixed assembler directive and then not an ASM statement
-
-  Revision 1.47  1998/10/30 16:20:22  peter
-    * fixed dispose(destructor) crash when destructor didn't exists
-
-  Revision 1.46  1998/10/20 08:06:53  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.45  1998/10/19 08:55:01  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.44  1998/10/13 13:10:27  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.43  1998/10/08 13:46:22  peter
-    * added eof message
-    * fixed unit init section parsing with finalize
-
-  Revision 1.42  1998/09/26 17:45:38  peter
-    + idtoken and only one token table
-
-  Revision 1.41  1998/09/24 23:49:15  peter
-    + aktmodeswitches
-
-  Revision 1.40  1998/09/23 21:53:04  florian
-    * the following doesn't work: on texception do, was a parser error, fixed
-
-  Revision 1.39  1998/09/21 10:26:07  peter
-    * merged fix
-
-  Revision 1.38.2.1  1998/09/21 10:24:43  peter
-    * fixed error recovery with with
-
-  Revision 1.38  1998/09/04 08:42:04  peter
-    * updated some error messages
-
-  Revision 1.37  1998/08/21 14:08:52  pierre
-    + TEST_FUNCRET now default (old code removed)
-      works also for m68k (at least compiles)
-
-  Revision 1.36  1998/08/20 21:36:41  peter
-    * fixed 'with object do' bug
-
-  Revision 1.35  1998/08/20 09:26:42  pierre
-    + funcret setting in underproc testing
-      compile with _dTEST_FUNCRET
-
-  Revision 1.34  1998/08/17 10:10:09  peter
-    - removed OLDPPU
-
-  Revision 1.33  1998/08/12 19:39:30  peter
-    * fixed some crashes
-
-  Revision 1.32  1998/08/10 14:50:17  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.31  1998/08/02 16:41:59  florian
-    * on o : tobject do should also work now, the exceptsymtable shouldn't be
-      disposed by dellexlevel
-
-  Revision 1.30  1998/07/30 16:07:10  florian
-    * try ... expect <statement> end; works now
-
-  Revision 1.29  1998/07/30 13:30:37  florian
-    * final implemenation of exception support, maybe it needs
-      some fixes :)
-
-  Revision 1.28  1998/07/30 11:18:18  florian
-    + first implementation of try ... except on .. do end;
-    * limitiation of 65535 bytes parameters for cdecl removed
-
-  Revision 1.27  1998/07/28 21:52:55  florian
-    + implementation of raise and try..finally
-    + some misc. exception stuff
-
-  Revision 1.26  1998/07/27 21:57:14  florian
-    * fix to allow tv like stream registration:
-        @tmenu.load doesn't work if load had parameters or if load was only
-        declared in an anchestor class of tmenu
-
-  Revision 1.25  1998/07/14 21:46:53  peter
-    * updated messages file
-
-  Revision 1.24  1998/07/10 10:48:42  peter
-    * fixed realnumber scanning
-    * [] after asmblock was not uppercased anymore
-
-  Revision 1.23  1998/06/25 08:48:18  florian
-    * first version of rtti support
-
-  Revision 1.22  1998/06/24 14:48:36  peter
-    * ifdef newppu -> ifndef oldppu
-
-  Revision 1.21  1998/06/24 14:06:34  peter
-    * fixed the name changes
-
-  Revision 1.20  1998/06/23 14:00:16  peter
-    * renamed RA* units
-
-  Revision 1.19  1998/06/08 22:59:50  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.18  1998/06/05 14:37:35  pierre
-    * fixes for inline for operators
-    * inline procedure more correctly restricted
-
-  Revision 1.17  1998/06/04 09:55:43  pierre
-    * demangled name of procsym reworked to become independant of the mangling scheme
-
-  Revision 1.16  1998/06/02 17:03:04  pierre
-    *  with node corrected for objects
-    * small bugs for SUPPORT_MMX fixed
-
-  Revision 1.15  1998/05/30 14:31:06  peter
-    + $ASMMODE
-
-  Revision 1.14  1998/05/29 09:58:14  pierre
-    * OPR_REGISTER for 1 arg was missing in ratti386.pas
-      (probably a merging problem)
-    * errors at start of line were lost
-
-  Revision 1.13  1998/05/28 17:26:50  peter
-    * fixed -R switch, it didn't work after my previous akt/init patch
-    * fixed bugs 110,130,136
-
-  Revision 1.12  1998/05/21 19:33:33  peter
-    + better procedure directive handling and only one table
-
-  Revision 1.11  1998/05/20 09:42:35  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.10  1998/05/11 13:07:56  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.9  1998/05/06 08:38:46  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.8  1998/05/05 12:05:42  florian
-    * problems with properties fixed
-    * crash fixed:  i:=l when i and l are undefined, was a problem with
-      implementation of private/protected
-
-  Revision 1.7  1998/05/01 16:38:46  florian
-    * handling of private and protected fixed
-    + change_keywords_to_tp implemented to remove
-      keywords which aren't supported by tp
-    * break and continue are now symbols of the system unit
-    + widestring, longstring and ansistring type released
-
-  Revision 1.6  1998/04/30 15:59:42  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.5  1998/04/29 10:33:59  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.4  1998/04/08 16:58:05  pierre
-    * several bugfixes
-      ADD ADC and AND are also sign extended
-      nasm output OK (program still crashes at end
-      and creates wrong assembler files !!)
-      procsym types sym in tdef removed !!
 }
 }
 
 

+ 4 - 677
compiler/psub.pas

@@ -1902,7 +1902,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.30  1999-10-26 12:30:44  peter
+  Revision 1.31  1999-11-06 14:34:23  peter
+    * truncated log to 20 revs
+
+  Revision 1.30  1999/10/26 12:30:44  peter
     * const parameter is now checked
     * const parameter is now checked
     * better and generic check if a node can be used for assigning
     * better and generic check if a node can be used for assigning
     * export fixes
     * export fixes
@@ -1989,680 +1992,4 @@ end.
     * all tokens now start with an underscore
     * all tokens now start with an underscore
     * PowerPC compiles!!
     * PowerPC compiles!!
 
 
-  Revision 1.10  1999/08/04 00:23:20  florian
-    * renamed i386asm and i386base to cpuasm and cpubase
-
-  Revision 1.9  1999/08/03 22:03:05  peter
-    * moved bitmask constants to sets
-    * some other type/const renamings
-
-  Revision 1.8  1999/08/03 17:09:42  florian
-    * the alpha compiler can be compiled now
-
-  Revision 1.7  1999/08/02 21:29:01  florian
-    * the main branch psub.pas is now used for
-      newcg compiler
-
-  Revision 1.6  1999/07/27 23:42:16  peter
-    * indirect type referencing is now allowed
-
-  Revision 1.5  1999/07/26 09:42:15  florian
-    * bugs 494-496 fixed
-
-  Revision 1.4  1999/07/11 20:10:24  peter
-    * merged
-
-  Revision 1.3  1999/07/02 13:02:24  peter
-    * merged
-
-  Revision 1.2  1999/06/17 13:19:56  pierre
-   * merged from 0_99_12 branch
-
-  Revision 1.1.2.4  1999/07/11 20:07:39  peter
-    * message crash fixed
-    * no error if self is used with non-string message
-
-  Revision 1.1.2.3  1999/07/11 20:04:05  pierre
-   * fix for problem with external without parameters in Delphi mode
-
-  Revision 1.1.2.2  1999/07/02 12:59:52  peter
-    * fixed parsing of message directive
-
-  Revision 1.1.2.1  1999/06/17 12:44:47  pierre
-    * solve problems related to assignment overloading
-    * support Delphi syntax for operator
-    * avoid problems if local procedure in operator
-
-  Revision 1.1  1999/06/11 13:21:37  peter
-    * reinserted
-
-  Revision 1.153  1999/06/02 22:44:14  pierre
-   * previous wrong log corrected
-
-  Revision 1.152  1999/06/02 22:25:46  pierre
-  * changed $ifdef FPC @ into $ifndef TP
-
-  Revision 1.151  1999/06/01 22:47:06  pierre
-   * problem with static keyword solved
-
-  Revision 1.150  1999/06/01 14:45:53  peter
-    * @procvar is now always needed for FPC
-
-  Revision 1.149  1999/05/31 16:42:31  peter
-    * interfacedef flag for procdef if it's defined in the interface, to
-      make a difference with 'forward;' directive forwarddef. Fixes 253
-
-  Revision 1.148  1999/05/27 19:44:52  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.147  1999/05/24 08:55:27  florian
-    * non working safecall directiv implemented, I don't know if we
-      need it
-
-  Revision 1.146  1999/05/23 18:42:11  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.145  1999/05/21 13:55:09  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.144  1999/05/18 14:15:55  peter
-    * containsself fixes
-    * checktypes()
-
-  Revision 1.143  1999/05/17 21:57:13  florian
-    * new temporary ansistring handling
-
-  Revision 1.142  1999/05/17 15:06:38  pierre
-   * fixes for object type check
-
-  Revision 1.141  1999/05/13 21:59:39  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.140  1999/05/12 22:36:12  florian
-    * override isn't allowed in objects!
-
-  Revision 1.139  1999/05/10 09:01:41  peter
-    * small message fixes
-
-  Revision 1.138  1999/05/09 12:46:24  peter
-    + hint where a duplicate sym is already defined
-
-  Revision 1.137  1999/05/08 19:48:45  peter
-    * better error message if declaration doesn't match forward
-
-  Revision 1.136  1999/05/08 15:26:15  peter
-    * print also manglednames when changed
-
-  Revision 1.135  1999/05/06 10:12:10  peter
-    * fixed operator result offset which destroyed parast^.datasize
-
-  Revision 1.134  1999/05/01 13:24:36  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.133  1999/04/28 11:12:03  peter
-    * fixed crash with self pointer
-
-  Revision 1.132  1999/04/28 06:02:09  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.131  1999/04/26 13:31:44  peter
-    * release storenumber,double_checksum
-
-  Revision 1.130  1999/04/21 09:43:49  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.129  1999/04/20 14:39:07  daniel
-  *** empty log message ***
-
-  Revision 1.125  1999/04/14 09:14:55  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.124  1999/04/07 15:31:13  pierre
-    * all formaldefs are now a sinlge definition
-      cformaldef (this was necessary for double_checksum)
-    + small part of double_checksum code
-
-  Revision 1.123  1999/04/06 11:21:58  peter
-    * more use of ttoken
-
-  Revision 1.122  1999/03/31 13:55:16  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.121  1999/03/26 00:05:39  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.120  1999/03/24 23:17:18  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.119  1999/03/05 09:46:18  pierre
-   * public problem for methods
-
-  Revision 1.118  1999/03/05 01:14:24  pierre
-    * bug0198 : call conventions for methods
-      not yet implemented is the control of same calling convention
-      for virtual and child's virtual
-    * msgstr and msgint only created if message was found
-      who implemented this by the way ?
-      it leaks lots of plabels !!!! (check with heaptrc !)
-
-  Revision 1.117  1999/03/04 13:55:47  pierre
-    * some m68k fixes (still not compilable !)
-    * new(tobj) does not give warning if tobj has no VMT !
-
-  Revision 1.116  1999/03/01 15:40:52  peter
-    * external name <str> didn't concatexternal()
-
-  Revision 1.115  1999/03/01 13:31:58  pierre
-   * external used before implemented problem fixed
-
-  Revision 1.114  1999/02/24 00:59:15  peter
-    * small updates for ag386bin
-
-  Revision 1.113  1999/02/23 18:29:21  pierre
-    * win32 compilation error fix
-    + some work for local browser (not cl=omplete yet)
-
-  Revision 1.112  1999/02/22 13:07:03  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.111  1999/02/22 02:15:33  peter
-    * updates for ag386bin
-
-  Revision 1.110  1999/02/16 12:23:19  pierre
-   * nested forward procedure bug solved
-
-  Revision 1.109  1999/02/15 10:07:06  pierre
-   * memory leaks due to last commit solved
-
-  Revision 1.108  1999/02/11 09:46:27  pierre
-    * fix for normal method calls inside static methods :
-      WARNING there were both parser and codegen errors !!
-      added static_call boolean to calln tree
-
-  Revision 1.107  1999/02/10 11:27:39  pierre
-   * overloaded function locals problem bug0213
-
-  Revision 1.106  1999/02/08 11:29:05  pierre
-   * fix for bug0214
-     several problems where combined
-     search_class_member did not set srsymtable
-     => in do_member_read the call node got a wrong symtable
-     in cg386cal the vmt was pushed twice without chacking if it exists
-     now %esi is set to zero and pushed if not vmt
-     (not very efficient but should work !)
-
-  Revision 1.105  1999/02/05 12:51:20  florian
-    + openstring id is now supported
-
-  Revision 1.104  1999/02/03 09:26:44  pierre
-   + better reference for args of procs
-
-  Revision 1.103  1999/02/02 11:04:37  florian
-    * class destructors fixed, class instances weren't disposed correctly
-
-  Revision 1.102  1999/01/21 22:10:46  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.101  1999/01/20 14:18:38  pierre
-    * bugs related to mangledname solved
-      - linux external without name
-      -external procs already used
-      (added count and is_used boolean fiels in tprocvar)
-
-  Revision 1.100  1999/01/20 10:20:19  peter
-    * don't make localvar copies for assembler procedures
-
-  Revision 1.99  1999/01/19 15:59:40  pierre
-   * fix for function a;
-
-  Revision 1.98  1999/01/19 12:16:07  peter
-    * NOPASS2 now calls firstpass
-
-  Revision 1.97  1999/01/14 11:35:30  daniel
-  * Fixed manglednames
-
-  Revision 1.96  1998/12/30 13:41:10  peter
-    * released valuepara
-
-  Revision 1.95  1998/12/30 10:36:39  michael
-  + Delphi also allows external in interface section
-
-  Revision 1.94  1998/12/29 18:48:26  jonas
-    + optimize pascal code surrounding assembler blocks
-
-  Revision 1.93  1998/12/28 15:44:49  peter
-    + NOPASS2 define
-
-  Revision 1.92  1998/12/11 00:03:39  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.91  1998/11/27 14:50:42  peter
-    + open strings, $P switch support
-
-  Revision 1.90  1998/11/18 17:45:27  peter
-    * fixes for VALUEPARA
-
-  Revision 1.89  1998/11/18 15:44:15  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.88  1998/11/16 15:40:30  pierre
-   * mangling name and -So bugs solved
-
-  Revision 1.87  1998/11/16 11:29:02  pierre
-    * stackcheck removed for i386_win32
-    * exportlist does not crash at least !!
-      (was need for tests dir !)z
-
-  Revision 1.86  1998/11/16 10:13:54  peter
-    * label defines are checked at the end of the proc
-
-  Revision 1.85  1998/11/13 15:40:26  pierre
-    + added -Se in Makefile cvstest target
-    + lexlevel cleanup
-      normal_function_level main_program_level and unit_init_level defined
-    * tins_cache grown to A_EMMS (gave range check error in asm readers)
-      (test added in code !)
-    * -Un option was wrong
-    * _FAIL and _SELF only keyword inside
-      constructors and methods respectively
-
-  Revision 1.84  1998/11/10 10:09:13  peter
-    * va_list -> array of const
-
-  Revision 1.83  1998/11/09 11:44:34  peter
-    + va_list for printf support
-
-  Revision 1.82  1998/10/29 11:35:53  florian
-    * some dll support for win32
-    * fixed assembler writing for PalmOS
-
-  Revision 1.81  1998/10/28 18:26:16  pierre
-   * removed some erros after other errors (introduced by useexcept)
-   * stabs works again correctly (for how long !)
-
-  Revision 1.80  1998/10/27 13:45:37  pierre
-    * classes get a vmt allways
-    * better error info (tried to remove
-      several error strings introduced by the tpexcept handling)
-
-  Revision 1.79  1998/10/23 00:09:43  peter
-    * fixed message for forward declaration
-
-  Revision 1.78  1998/10/20 13:10:37  peter
-    * fixed crash when aktprocsym<>procsym
-
-  Revision 1.77  1998/10/20 08:06:55  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.76  1998/10/19 08:55:02  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.75  1998/10/16 08:51:48  peter
-    + target_os.stackalignment
-    + stack can be aligned at 2 or 4 byte boundaries
-
-  Revision 1.74  1998/10/14 20:39:21  florian
-    * syscall for PalmOs fixed
-
-  Revision 1.73  1998/10/12 12:20:56  pierre
-    + added tai_const_symbol_offset
-      for r : pointer = @var.field;
-    * better message for different arg names on implementation
-      of function
-
-  Revision 1.72  1998/10/08 23:29:03  peter
-    * -vu shows unit info, -vt shows tried/used files
-
-  Revision 1.71  1998/10/08 17:17:28  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.70  1998/10/08 13:48:49  peter
-    * fixed memory leaks for do nothing source
-    * fixed unit interdependency
-
-  Revision 1.69  1998/10/05 21:33:27  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.68  1998/09/29 11:31:30  florian
-    * better error recovering when the object type of procedure tobject.method
-      isn't found
-
-  Revision 1.67  1998/09/26 17:45:39  peter
-    + idtoken and only one token table
-
-  Revision 1.66  1998/09/24 23:49:16  peter
-    + aktmodeswitches
-
-  Revision 1.65  1998/09/24 11:08:14  florian
-    * small problem in _proc_header with array of const fixed:
-      getsymonlyin doesn't set srsym to nil
-
-  Revision 1.64  1998/09/23 15:39:12  pierre
-    * browser bugfixes
-      was adding a reference when looking for the symbol
-      if -bSYM_NAME was used
-
-  Revision 1.63  1998/09/22 17:13:50  pierre
-    + browsing updated and developed
-      records and objects fields are also stored
-
-  Revision 1.62  1998/09/22 15:37:21  peter
-    + array of const start
-
-  Revision 1.61  1998/09/21 08:45:20  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.60  1998/09/17 09:42:42  peter
-    + pass_2 for cg386
-    * Message() -> CGMessage() for pass_1/pass_2
-
-  Revision 1.59  1998/09/15 14:05:25  jonas
-    * fixed optimizer incompatibilities with freelabel code in psub
-
-  Revision 1.58  1998/09/14 21:27:41  peter
-    - freelabel calls, becuase they are instable with -O2
-
-  Revision 1.57  1998/09/14 10:38:27  peter
-    * pd_alias now uses get_stringconst
-
-  Revision 1.56  1998/09/14 10:29:38  daniel
-  * Fixed memory leaks.
-
-  Revision 1.55  1998/09/09 11:50:56  pierre
-    * forward def are not put in record or objects
-    + added check for forwards also in record and objects
-    * dummy parasymtable for unit initialization removed from
-    symtable stack
-
-  Revision 1.54  1998/09/04 08:42:05  peter
-    * updated some error messages
-
-  Revision 1.53  1998/09/01 17:39:51  peter
-    + internal constant functions
-
-  Revision 1.52  1998/09/01 09:07:12  peter
-    * m68k fixes, splitted cg68k like cgi386
-
-  Revision 1.51  1998/09/01 07:54:21  pierre
-    * UseBrowser a little updated (might still be buggy !!)
-    * bug in psub.pas in function specifier removed
-    * stdcall allowed in interface and in implementation
-      (FPC will not yet complain if it is missing in either part
-      because stdcall is only a dummy !!)
-
-  Revision 1.50  1998/08/31 12:26:31  peter
-    * m68k and palmos updates from surebugfixes
-
-  Revision 1.49  1998/08/25 12:42:43  pierre
-    * CDECL changed to CVAR for variables
-      specifications are read in structures also
-    + started adding GPC compatibility mode ( option  -Sp)
-    * names changed to lowercase
-
-  Revision 1.48  1998/08/21 08:43:30  pierre
-    * pocdecl and poclearstack are now different
-      external must but written as last specification
-
-  Revision 1.47  1998/08/20 09:26:44  pierre
-    + funcret setting in underproc testing
-      compile with _dTEST_FUNCRET
-
-  Revision 1.46  1998/08/19 18:04:55  peter
-    * fixed current_module^.in_implementation flag
-
-  Revision 1.45  1998/08/13 10:58:38  peter
-    * fixed function reading for -So which was not correct after my previous
-      fix for bug 147
-
-  Revision 1.44  1998/08/10 14:50:18  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.43  1998/08/10 09:58:33  peter
-    * Fixed function b; in -So mode
-
-  Revision 1.42  1998/07/30 16:07:11  florian
-    * try ... expect <statement> end; works now
-
-  Revision 1.41  1998/07/23 19:31:19  jonas
-    * split the optimizer
-
-  Revision 1.40  1998/07/21 11:16:24  florian
-    * bug0147 fixed
-
-  Revision 1.39  1998/07/14 21:46:54  peter
-    * updated messages file
-
-  Revision 1.38  1998/07/14 14:46:57  peter
-    * released NEWINPUT
-
-  Revision 1.37  1998/07/10 13:12:53  peter
-    * carls patch
-
-  Revision 1.36  1998/07/10 13:06:53  michael
-  + Carls patch. Checked make cycle.
-
-  Revision 1.35  1998/07/10 00:00:01  peter
-    * fixed ttypesym bug finally
-    * fileinfo in the symtable and better using for unused vars
-
-  Revision 1.34  1998/07/07 11:20:05  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.33  1998/06/15 15:38:08  pierre
-    * small bug in systems.pas corrected
-    + operators in different units better hanlded
-
-  Revision 1.32  1998/06/13 00:10:13  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.31  1998/06/10 17:04:05  michael
-  + Fix for reading untyped const parameters
-
-  Revision 1.30  1998/06/09 16:01:50  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.29  1998/06/08 22:59:51  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.28  1998/06/08 13:13:45  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.27  1998/06/05 17:47:30  peter
-    * some better uses clauses
-
-  Revision 1.26  1998/06/05 14:37:36  pierre
-    * fixes for inline for operators
-    * inline procedure more correctly restricted
-
-  Revision 1.25  1998/06/04 23:51:54  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.24  1998/06/04 09:55:44  pierre
-    * demangled name of procsym reworked to become independant of the mangling scheme
-
-  Revision 1.23  1998/05/28 17:26:51  peter
-    * fixed -R switch, it didn't work after my previous akt/init patch
-    * fixed bugs 110,130,136
-
-  Revision 1.22  1998/05/28 14:40:27  peter
-    * fixes for newppu, remake3 works now with it
-
-  Revision 1.21  1998/05/23 01:21:25  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.20  1998/05/21 19:33:34  peter
-    + better procedure directive handling and only one table
-
-  Revision 1.19  1998/05/20 09:42:36  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.18  1998/05/11 13:07:56  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.17  1998/05/06 18:36:54  peter
-    * tai_section extended with code,data,bss sections and enumerated type
-    * ident 'compiled by FPC' moved to pmodules
-    * small fix for smartlink
-
-  Revision 1.16  1998/05/06 08:38:47  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.15  1998/05/04 17:54:28  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.14  1998/05/01 09:01:24  florian
-    + correct semantics of private and protected
-    * small fix in variable scope:
-       a id can be used in a parameter list of a method, even it is used in
-       an anchestor class as field id
-
-  Revision 1.13  1998/04/30 15:59:42  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.12  1998/04/29 10:34:00  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.11  1998/04/27 23:10:28  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.10  1998/04/21 10:16:48  peter
-    * patches from strasbourg
-    * objects is not used anymore in the fpc compiled version
-
-  Revision 1.9  1998/04/13 22:20:36  florian
-    + stricter checking for duplicate id, solves also bug0097
-
-  Revision 1.8  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.7  1998/04/13 08:42:52  florian
-    * call by reference and call by value open arrays fixed
-
-  Revision 1.6  1998/04/10 15:39:48  florian
-    * more fixes to get classes.pas compiled
-
-  Revision 1.5  1998/04/10 14:41:43  peter
-    * removed some Hints
-    * small speed optimization for AsmLn
-
-  Revision 1.4  1998/04/08 16:58:05  pierre
-    * several bugfixes
-      ADD ADC and AND are also sign extended
-      nasm output OK (program still crashes at end
-      and creates wrong assembler files !!)
-      procsym types sym in tdef removed !!
 }
 }

+ 4 - 30
compiler/psystem.pas

@@ -238,7 +238,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.28  1999-09-16 23:05:55  florian
+  Revision 1.29  1999-11-06 14:34:23  peter
+    * truncated log to 20 revs
+
+  Revision 1.28  1999/09/16 23:05:55  florian
     * m68k compiler is again compilable (only gas writer, no assembler reader)
     * m68k compiler is again compilable (only gas writer, no assembler reader)
 
 
   Revision 1.27  1999/08/13 14:24:17  pierre
   Revision 1.27  1999/08/13 14:24:17  pierre
@@ -317,33 +320,4 @@ end.
     * released useansistring
     * released useansistring
     * removed -Sv, its now available in fpc modes
     * removed -Sv, its now available in fpc modes
 
 
-  Revision 1.8  1998/11/04 10:11:44  peter
-    * ansistring fixes
-
-  Revision 1.7  1998/10/05 12:32:48  peter
-    + assert() support
-
-  Revision 1.6  1998/09/24 23:49:17  peter
-    + aktmodeswitches
-
-  Revision 1.5  1998/08/10 14:50:19  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.4  1998/06/25 14:04:24  peter
-    + internal inc/dec
-
-  Revision 1.3  1998/06/04 23:51:55  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.2  1998/06/04 08:23:57  pierre
-    * boolean again intern declared (needed to be able to compile
-      older RTL's)
-
-  Revision 1.1  1998/06/03 22:49:01  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
 }
 }

+ 4 - 128
compiler/ptconst.pas

@@ -745,7 +745,10 @@ unit ptconst;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.54  1999-10-14 14:57:54  florian
+  Revision 1.55  1999-11-06 14:34:23  peter
+    * truncated log to 20 revs
+
+  Revision 1.54  1999/10/14 14:57:54  florian
     - removed the hcodegen use in the new cg, use cgbase instead
     - removed the hcodegen use in the new cg, use cgbase instead
 
 
   Revision 1.53  1999/09/26 21:30:20  peter
   Revision 1.53  1999/09/26 21:30:20  peter
@@ -829,131 +832,4 @@ end.
   Revision 1.35  1999/01/20 14:09:28  pierre
   Revision 1.35  1999/01/20 14:09:28  pierre
    * fix to bug0191
    * fix to bug0191
 
 
-  Revision 1.34  1999/01/05 08:20:08  florian
-    * mainly problem with invalid case ranges fixed (reported by Jonas)
-
-  Revision 1.33  1998/12/15 17:16:01  peter
-    * fixed const s : ^string
-    * first things for const pchar : @string[1]
-
-  Revision 1.32  1998/12/11 16:50:23  florian
-    + typed const int64 and qword
-    + unary minus-operator  q1:=-q2;
-    + not-operator
-
-  Revision 1.31  1998/12/11 00:03:41  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.30  1998/11/27 14:34:42  peter
-    * give error when string[0] decl is found
-
-  Revision 1.29  1998/11/23 18:26:44  pierre
-   * fix for bug0182
-
-  Revision 1.28  1998/11/17 10:40:16  peter
-    * H+ fixes
-
-  Revision 1.27  1998/11/16 12:12:23  peter
-    - generate_pascii which is obsolete
-
-  Revision 1.26  1998/11/10 17:53:06  peter
-    * fixed const string
-
-  Revision 1.25  1998/11/10 16:10:47  peter
-    * fixed const pchar
-
-  Revision 1.24  1998/11/05 12:02:55  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.23  1998/11/04 10:11:45  peter
-    * ansistring fixes
-
-  Revision 1.22  1998/10/20 08:06:56  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.21  1998/10/19 08:55:03  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.20  1998/10/16 08:51:49  peter
-    + target_os.stackalignment
-    + stack can be aligned at 2 or 4 byte boundaries
-
-  Revision 1.19  1998/10/12 12:20:58  pierre
-    + added tai_const_symbol_offset
-      for r : pointer = @var.field;
-    * better message for different arg names on implementation
-      of function
-
-  Revision 1.18  1998/10/12 09:50:05  florian
-    + support of <procedure var type>:=<pointer> in delphi mode added
-
-  Revision 1.17  1998/10/09 08:56:29  pierre
-    * several memory leaks fixed
-
-  Revision 1.16  1998/09/24 23:49:18  peter
-    + aktmodeswitches
-
-  Revision 1.15  1998/09/07 18:46:11  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.14  1998/09/04 08:42:07  peter
-    * updated some error messages
-
-  Revision 1.13  1998/09/01 09:05:36  peter
-    * fixed string[4]='.library'
-
-  Revision 1.12  1998/08/31 12:26:32  peter
-    * m68k and palmos updates from surebugfixes
-
-  Revision 1.11  1998/08/10 14:50:20  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.10  1998/07/21 11:16:25  florian
-    * bug0147 fixed
-
-  Revision 1.9  1998/07/20 22:17:16  florian
-    * hex constants in numeric char (#$54#$43 ...) are now allowed
-    * there was a bug in record_var_dec which prevents the used
-      of nested variant records (for example drivers.tevent of tv)
-
-  Revision 1.8  1998/07/20 18:40:15  florian
-    * handling of ansi string constants should now work
-
-  Revision 1.7  1998/07/18 22:54:29  florian
-    * some ansi/wide/longstring support fixed:
-       o parameter passing
-       o returning as result from functions
-
-  Revision 1.6  1998/06/08 22:59:52  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.5  1998/06/03 22:49:01  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.4  1998/05/05 12:05:42  florian
-    * problems with properties fixed
-    * crash fixed:  i:=l when i and l are undefined, was a problem with
-      implementation of private/protected
-
-  Revision 1.3  1998/04/29 10:34:00  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
 }
 }

+ 4 - 32
compiler/ra386att.pas

@@ -1987,7 +1987,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.60  1999-10-01 07:59:20  peter
+  Revision 1.61  1999-11-06 14:34:23  peter
+    * truncated log to 20 revs
+
+  Revision 1.60  1999/10/01 07:59:20  peter
     * fixed object field parsing
     * fixed object field parsing
 
 
   Revision 1.59  1999/09/27 23:44:57  peter
   Revision 1.59  1999/09/27 23:44:57  peter
@@ -2068,36 +2071,5 @@ end.
   Revision 1.43  1999/05/04 21:45:01  florian
   Revision 1.43  1999/05/04 21:45:01  florian
     * changes to compile it with Delphi 4.0
     * changes to compile it with Delphi 4.0
 
 
-  Revision 1.42  1999/05/02 14:25:07  peter
-    * only allow *<reg/ref> when call/jmp is used
-
-  Revision 1.41  1999/05/01 13:48:39  peter
-    * merged nasm compiler
-
-  Revision 1.7  1999/04/29 09:37:47  peter
-    * fixed var+const support
-
-  Revision 1.6  1999/04/26 23:26:17  peter
-    * redesigned record offset parsing to support nested records
-    * normal compiler uses the redesigned createvarinstr()
-
-  Revision 1.5  1999/04/20 11:01:23  peter
-    * better tokenpos info
-
-  Revision 1.4  1999/04/14 09:07:45  peter
-    * asm reader improvements
-
-  Revision 1.3  1999/03/06 17:24:26  peter
-    * rewritten intel parser a lot, especially reference reading
-    * size checking added for asm parsers
-
-  Revision 1.2  1999/03/02 02:56:30  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.1  1999/03/01 15:46:26  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
-
 }
 }
 
 

+ 4 - 22
compiler/ra386dir.pas

@@ -290,7 +290,10 @@ unit Ra386dir;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.24  1999-09-27 23:44:58  peter
+  Revision 1.25  1999-11-06 14:34:24  peter
+    * truncated log to 20 revs
+
+  Revision 1.24  1999/09/27 23:44:58  peter
     * procinfo is now a pointer
     * procinfo is now a pointer
     * support for result setting in sub procedure
     * support for result setting in sub procedure
 
 
@@ -377,25 +380,4 @@ end.
   Revision 1.5  1998/08/21 08:45:51  pierre
   Revision 1.5  1998/08/21 08:45:51  pierre
     * better line info for asm statements
     * better line info for asm statements
 
 
-  Revision 1.4  1998/07/14 14:46:59  peter
-    * released NEWINPUT
-
-  Revision 1.3  1998/07/07 11:20:08  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.2  1998/06/24 14:06:37  peter
-    * fixed the name changes
-
-  Revision 1.1  1998/06/23 14:00:18  peter
-    * renamed RA* units
-
-  Revision 1.5  1998/06/12 10:32:32  pierre
-    * column problem hopefully solved
-    + C vars declaration changed
-
-  Revision 1.4  1998/06/04 23:51:58  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
 }
 }

+ 4 - 31
compiler/ra386int.pas

@@ -1767,7 +1767,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.50  1999-10-01 07:59:21  peter
+  Revision 1.51  1999-11-06 14:34:24  peter
+    * truncated log to 20 revs
+
+  Revision 1.50  1999/10/01 07:59:21  peter
     * fixed object field parsing
     * fixed object field parsing
 
 
   Revision 1.49  1999/09/27 23:44:58  peter
   Revision 1.49  1999/09/27 23:44:58  peter
@@ -1844,34 +1847,4 @@ end.
   Revision 1.34  1999/05/21 13:55:16  peter
   Revision 1.34  1999/05/21 13:55:16  peter
     * NEWLAB for label as symbol
     * NEWLAB for label as symbol
 
 
-  Revision 1.33  1999/05/05 22:22:03  peter
-    * updated messages
-
-  Revision 1.32  1999/05/04 21:45:02  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.31  1999/05/01 13:48:41  peter
-    * merged nasm compiler
-
-  Revision 1.6  1999/04/26 23:26:18  peter
-    * redesigned record offset parsing to support nested records
-    * normal compiler uses the redesigned createvarinstr()
-
-  Revision 1.5  1999/04/20 11:01:24  peter
-    * better tokenpos info
-
-  Revision 1.4  1999/04/14 09:07:46  peter
-    * asm reader improvements
-
-  Revision 1.3  1999/03/06 17:24:27  peter
-    * rewritten intel parser a lot, especially reference reading
-    * size checking added for asm parsers
-
-  Revision 1.2  1999/03/02 02:56:31  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.1  1999/03/01 15:46:26  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
 }
 }

+ 4 - 21
compiler/rautils.pas

@@ -1433,7 +1433,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.27  1999-09-27 23:44:58  peter
+  Revision 1.28  1999-11-06 14:34:26  peter
+    * truncated log to 20 revs
+
+  Revision 1.27  1999/09/27 23:44:58  peter
     * procinfo is now a pointer
     * procinfo is now a pointer
     * support for result setting in sub procedure
     * support for result setting in sub procedure
 
 
@@ -1506,24 +1509,4 @@ end.
   Revision 1.7  1999/04/14 09:07:48  peter
   Revision 1.7  1999/04/14 09:07:48  peter
     * asm reader improvements
     * asm reader improvements
 
 
-  Revision 1.6  1999/03/31 13:55:34  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.5  1999/03/26 00:01:17  peter
-    * first things for optimizer (compiles but cycle crashes)
-
-  Revision 1.4  1999/03/25 16:55:36  peter
-    + unitpath,librarypath,includepath,objectpath directives
-
-  Revision 1.3  1999/03/06 17:24:28  peter
-    * rewritten intel parser a lot, especially reference reading
-    * size checking added for asm parsers
-
-  Revision 1.2  1999/03/02 02:56:33  peter
-    + stabs support for binary writers
-    * more fixes and missing updates from the previous commit :(
-
-  Revision 1.1  1999/03/01 15:46:26  peter
-    * ag386bin finally make cycles correct
-    * prefixes are now also normal opcodes
 }
 }

+ 4 - 175
compiler/scandir.inc

@@ -1163,7 +1163,10 @@ const
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.65  1999-10-30 12:32:30  peter
+  Revision 1.66  1999-11-06 14:34:26  peter
+    * truncated log to 20 revs
+
+  Revision 1.65  1999/10/30 12:32:30  peter
     * fixed line counter when the first line had #10 only. This was buggy
     * fixed line counter when the first line had #10 only. This was buggy
       for both the main file as for include files
       for both the main file as for include files
 
 
@@ -1243,178 +1246,4 @@ const
       is not enabled when quitting global section
       is not enabled when quitting global section
     * local vars and procedures are not yet stored into PPU
     * local vars and procedures are not yet stored into PPU
 
 
-  Revision 1.46  1999/02/05 08:51:16  pierre
-   * $L default extension from resext to objext
-
-  Revision 1.45  1998/12/28 23:26:25  peter
-    + resource file handling ($R directive) for Win32
-
-  Revision 1.44  1998/12/15 10:23:29  peter
-    + -iSO, -iSP, -iTO, -iTP
-
-  Revision 1.43  1998/11/16 15:41:43  peter
-    * tp7 didn't like my ifopt H+ :(
-
-  Revision 1.42  1998/11/16 12:18:04  peter
-    * H+ fixes
-
-  Revision 1.41  1998/10/22 17:54:08  florian
-    + switch $APPTYPE for win32 added
-
-  Revision 1.40  1998/10/21 20:16:04  peter
-    * beter line info for conditionals
-
-  Revision 1.39  1998/10/13 16:50:21  pierre
-    * undid some changes of Peter that made the compiler wrong
-      for m68k (I had to reinsert some ifdefs)
-    * removed several memory leaks under m68k
-    * removed the meory leaks for assembler readers
-    * cross compiling shoud work again better
-      ( crosscompiling sysamiga works
-       but as68k still complain about some code !)
-
-  Revision 1.38  1998/10/13 13:10:28  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.37  1998/10/08 23:29:04  peter
-    * -vu shows unit info, -vt shows tried/used files
-
-  Revision 1.36  1998/10/08 17:17:29  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.35  1998/10/08 13:44:39  peter
-    * fixed $I %date% not in uppercase
-
-  Revision 1.34  1998/09/28 16:57:24  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.33  1998/09/26 17:45:40  peter
-    + idtoken and only one token table
-
-  Revision 1.32  1998/09/24 23:49:19  peter
-    + aktmodeswitches
-
-  Revision 1.31  1998/09/18 16:03:44  florian
-    * some changes to compile with Delphi
-
-  Revision 1.30  1998/09/16 16:41:47  peter
-    * merged fixes
-
-  Revision 1.28.2.1  1998/09/16 16:09:51  peter
-    * on/off support also for the local/module switches
-
-  Revision 1.29  1998/09/11 09:19:53  daniel
-  * Removed tabs.
-
-  Revision 1.28  1998/09/10 15:25:36  daniel
-  + Added maxheapsize.
-  * Corrected semi-bug in calling the assembler and the linker
-
-  Revision 1.27  1998/09/09 15:33:59  peter
-    * removed warnings
-
-  Revision 1.26  1998/09/03 11:24:02  peter
-    * moved more inputfile things from tscannerfile to tinputfile
-    * changed ifdef Sourceline to cs_asm_source
-
-  Revision 1.25  1998/09/02 15:13:31  peter
-    * fixed typo in directive table
-
-  Revision 1.24  1998/09/01 12:52:06  peter
-    + a lot of delphi switches
-
-  Revision 1.23  1998/08/26 15:35:34  peter
-    * fixed scannerfiles for macros
-    + $I %<environment>%
-
-  Revision 1.22  1998/08/19 14:57:50  peter
-    * small fix for aktfilepos
-
-  Revision 1.20  1998/08/18 15:11:52  peter
-    * recompiles again
-
-  Revision 1.19  1998/08/18 09:24:44  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.18  1998/08/10 14:50:25  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.17  1998/08/10 09:56:04  peter
-    * path to the include file is also written to the debug output
-
-  Revision 1.16  1998/08/04 22:03:44  michael
-  + fixed dir_include search() call
-
-  Revision 1.15  1998/07/14 21:46:55  peter
-    * updated messages file
-
-  Revision 1.14  1998/07/14 14:47:03  peter
-    * released NEWINPUT
-
-  Revision 1.13  1998/07/07 12:32:54  peter
-    * status.currentsource is now calculated in verbose (more accurated)
-
-  Revision 1.12  1998/07/07 11:20:10  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.11  1998/06/04 23:51:59  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.10  1998/05/30 14:31:10  peter
-    + $ASMMODE
-
-  Revision 1.9  1998/05/23 01:21:28  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.8  1998/05/11 13:07:57  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.7  1998/05/08 09:21:20  michael
-  * Added missing -Fl message to messages file.
-  * Corrected mangling of file names when doing Linklib
-  * -Fl now actually WORKS.
-  * Librarysearchpath is now a field in linker object.
-
-  Revision 1.6  1998/05/04 17:54:28  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.5  1998/04/30 15:59:42  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.4  1998/04/29 13:42:27  peter
-    + $IOCHECKS and $ALIGN to test already, other will follow soon
-    * fixed the wrong linecounting with comments
-
-  Revision 1.3  1998/04/28 11:45:53  florian
-    * make it compilable with TP
-    + small COM problems solved to compile classes.pp
-
-  Revision 1.2  1998/04/28 10:09:54  pierre
-    * typo error in asm style reading corrected
-
-  Revision 1.1  1998/04/27 23:13:53  peter
-    + the new files for the scanner
-
 }
 }

+ 4 - 278
compiler/scanner.pas

@@ -1695,7 +1695,10 @@ exit_label:
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.99  1999-11-03 23:44:28  peter
+  Revision 1.100  1999-11-06 14:34:26  peter
+    * truncated log to 20 revs
+
+  Revision 1.99  1999/11/03 23:44:28  peter
     * fixed comment level counting after directive
     * fixed comment level counting after directive
 
 
   Revision 1.98  1999/11/02 15:05:08  peter
   Revision 1.98  1999/11/02 15:05:08  peter
@@ -1768,281 +1771,4 @@ end.
   Revision 1.80  1999/04/06 11:20:59  peter
   Revision 1.80  1999/04/06 11:20:59  peter
     * more hashing for keyword table
     * more hashing for keyword table
 
 
-  Revision 1.79  1999/04/01 22:05:59  peter
-    * '1.' is now parsed as a real
-
-  Revision 1.78  1999/03/26 19:10:06  peter
-    * support also ^^
-
-  Revision 1.77  1999/03/26 00:05:45  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.76  1999/03/24 23:17:24  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.75  1999/03/16 21:00:27  peter
-    * fixed old tp comment behaviour within directives
-
-  Revision 1.74  1999/03/11 10:46:29  daniel
-  * Reverted C styled comments
-
-  Revision 1.73  1999/03/02 22:49:35  peter
-    * fixed nested comments for old style tp and c
-
-  Revision 1.72  1999/02/02 00:15:10  florian
-    + c styled comments
-
-  Revision 1.71  1999/01/27 13:05:45  pierre
-   * give include file name on error
-
-  Revision 1.70  1999/01/19 12:14:38  peter
-    * fixed eof bug with includefiles
-
-  Revision 1.69  1998/12/11 00:03:46  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.68  1998/11/16 15:41:44  peter
-    * tp7 didn't like my ifopt H+ :(
-
-  Revision 1.67  1998/11/16 12:18:06  peter
-    * H+ fixes
-
-  Revision 1.66  1998/11/05 23:48:29  peter
-    * recordtype.field support in constant expressions
-    * fixed imul for oa_imm8 which was not allowed
-    * fixed reading of local typed constants
-    * fixed comment reading which is not any longer a separator
-
-  Revision 1.65  1998/11/03 11:35:02  peter
-    * don't check for endif if error
-
-  Revision 1.64  1998/10/21 20:16:05  peter
-    * beter line info for conditionals
-
-  Revision 1.63  1998/10/16 14:20:57  daniel
-  * Faster keyword scanning.
-  * Import library and smartlink library in one file.
-
-  Revision 1.62  1998/10/15 12:22:23  pierre
-    * close include files immediately after end reading
-      instead of waiting until unit compilation ended !
-
-  Revision 1.61  1998/10/09 11:08:15  peter
-    * fixed inputfile^.name^ bug
-
-  Revision 1.60  1998/10/09 08:56:31  pierre
-    * several memory leaks fixed
-
-  Revision 1.59  1998/10/08 23:29:05  peter
-    * -vu shows unit info, -vt shows tried/used files
-
-  Revision 1.58  1998/10/08 17:17:30  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.57  1998/10/08 13:45:25  peter
-    * EOF position is now correctly saved in aktfilepos
-
-  Revision 1.56  1998/09/30 16:43:38  peter
-    * fixed unit interdependency with circular uses
-
-  Revision 1.55  1998/09/28 16:57:26  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.54  1998/09/26 17:45:41  peter
-    + idtoken and only one token table
-
-  Revision 1.53  1998/09/24 23:49:20  peter
-    + aktmodeswitches
-
-  Revision 1.52  1998/09/18 16:03:45  florian
-    * some changes to compile with Delphi
-
-  Revision 1.51  1998/09/16 16:41:49  peter
-    * merged fixes
-
-  Revision 1.50.2.1  1998/09/16 16:09:49  peter
-    * on/off support also for the local/module switches
-
-  Revision 1.50  1998/09/04 08:36:06  peter
-    + (. and .) which are equal to [ and ]
-
-  Revision 1.49  1998/09/03 11:24:03  peter
-    * moved more inputfile things from tscannerfile to tinputfile
-    * changed ifdef Sourceline to cs_asm_source
-
-  Revision 1.48  1998/09/01 12:51:02  peter
-    * close also resets lastlinepos
-
-  Revision 1.47  1998/09/01 09:01:52  peter
-    * initialize all object variables in .init
-
-  Revision 1.46  1998/08/29 13:49:00  peter
-    * fixed freemem calls which had the wrong size sometimes
-
-  Revision 1.45  1998/08/26 15:35:35  peter
-    * fixed scannerfiles for macros
-    + $I %<environment>%
-
-  Revision 1.44  1998/08/20 16:09:55  pierre
-    * tokenpos has to be restored also after
-      printstatus
-
-  Revision 1.43  1998/08/20 09:26:45  pierre
-    + funcret setting in underproc testing
-      compile with _dTEST_FUNCRET
-
-  Revision 1.42  1998/08/19 14:57:51  peter
-    * small fix for aktfilepos
-
-  Revision 1.41  1998/08/18 14:17:10  pierre
-    * bug about assigning the return value of a function to
-      a procvar fixed : warning
-      assigning a proc to a procvar need @ in FPC mode !!
-    * missing file/line info restored
-
-  Revision 1.40  1998/08/11 14:04:33  peter
-    * auto close an open file and better error msg
-
-  Revision 1.39  1998/08/10 14:50:26  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.38  1998/08/10 10:18:34  peter
-    + Compiler,Comphook unit which are the new interface units to the
-      compiler
-
-  Revision 1.37  1998/07/23 12:40:41  michael
-  No nested comments in Delphi mode.
-
-  Revision 1.36  1998/07/20 22:17:17  florian
-    * hex constants in numeric char (#$54#$43 ...) are now allowed
-    * there was a bug in record_var_dec which prevents the used
-      of nested variant records (for example drivers.tevent of tv)
-
-  Revision 1.35  1998/07/14 21:38:13  peter
-    + support for with p^do constructs
-
-  Revision 1.34  1998/07/14 14:47:04  peter
-    * released NEWINPUT
-
-  Revision 1.33  1998/07/10 10:48:40  peter
-    * fixed realnumber scanning
-    * [] after asmblock was not uppercased anymore
-
-  Revision 1.31  1998/07/07 17:39:38  peter
-    * fixed $I  with following eof
-
-  Revision 1.30  1998/07/07 12:32:55  peter
-    * status.currentsource is now calculated in verbose (more accurated)
-
-  Revision 1.29  1998/07/07 11:20:11  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.28  1998/07/01 15:26:57  peter
-    * better bufferfile.reset error handling
-
-  Revision 1.27  1998/06/25 08:48:19  florian
-    * first version of rtti support
-
-  Revision 1.26  1998/06/16 08:56:30  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.25  1998/06/13 00:10:15  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.24  1998/06/12 10:32:36  pierre
-    * column problem hopefully solved
-    + C vars declaration changed
-
-  Revision 1.23  1998/06/03 22:49:02  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.21  1998/05/27 00:20:32  peter
-    * some scanner optimizes
-    * automaticly aout2exe for go32v1
-    * fixed dynamiclinker option which was added at the wrong place
-
-  Revision 1.20  1998/05/23 01:21:30  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.19  1998/05/20 09:42:37  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.18  1998/05/12 10:47:00  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.17  1998/05/06 08:38:47  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.16  1998/05/04 17:54:28  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.15  1998/05/01 16:38:46  florian
-    * handling of private and protected fixed
-    + change_keywords_to_tp implemented to remove
-      keywords which aren't supported by tp
-    * break and continue are now symbols of the system unit
-    + widestring, longstring and ansistring type released
-
-  Revision 1.14  1998/04/30 15:59:42  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.13  1998/04/29 13:42:27  peter
-    + $IOCHECKS and $ALIGN to test already, other will follow soon
-    * fixed the wrong linecounting with comments
-
-  Revision 1.12  1998/04/29 10:34:04  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.11  1998/04/27 23:10:29  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
 }
 }

+ 4 - 12
compiler/switches.pas

@@ -171,7 +171,10 @@ end;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.23  1999-09-16 11:34:58  pierre
+  Revision 1.24  1999-11-06 14:34:26  peter
+    * truncated log to 20 revs
+
+  Revision 1.23  1999/09/16 11:34:58  pierre
    * typo correction
    * typo correction
 
 
   Revision 1.22  1999/08/01 23:35:06  michael
   Revision 1.22  1999/08/01 23:35:06  michael
@@ -253,15 +256,4 @@ end.
   Revision 1.4  1998/05/21 19:33:36  peter
   Revision 1.4  1998/05/21 19:33:36  peter
     + better procedure directive handling and only one table
     + better procedure directive handling and only one table
 
 
-  Revision 1.3  1998/05/01 07:43:56  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.2  1998/04/28 11:45:53  florian
-    * make it compilable with TP
-    + small COM problems solved to compile classes.pp
-
-  Revision 1.1  1998/04/27 23:13:53  peter
-    + the new files for the scanner
-
 }
 }

+ 4 - 603
compiler/symdef.inc

@@ -3811,7 +3811,10 @@ Const local_symtable_index : longint = $8001;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.173  1999-11-05 17:18:02  pierre
+  Revision 1.174  1999-11-06 14:34:26  peter
+    * truncated log to 20 revs
+
+  Revision 1.173  1999/11/05 17:18:02  pierre
     * local browsing works at first level
     * local browsing works at first level
       ie for function defined in interface or implementation
       ie for function defined in interface or implementation
       not yet for functions inside other functions
       not yet for functions inside other functions
@@ -3894,606 +3897,4 @@ Const local_symtable_index : longint = $8001;
   Revision 1.154  1999/08/14 00:38:58  peter
   Revision 1.154  1999/08/14 00:38:58  peter
     * hack to support property with record fields
     * hack to support property with record fields
 
 
-  Revision 1.153  1999/08/13 21:33:11  peter
-    * support for array constructors extended and more error checking
-
-  Revision 1.152  1999/08/13 14:24:18  pierre
-    + stabs for classes and classref working,
-      a class still needs an ^ to get that content of it,
-      but the class fields inside a class don't result into an
-      infinite loop anymore!
-
-  Revision 1.151  1999/08/12 14:31:20  peter
-    * long line fix
-
-  Revision 1.150  1999/08/11 08:56:53  michael
-  * RTTI fix from Sebastian Guenther
-
-  Revision 1.149  1999/08/10 13:22:08  pierre
-   * vmtmethodoffset made cross target compatible
-
-  Revision 1.148  1999/08/10 12:32:13  pierre
-   * avoid overflow in tarraydef.size
-
-  Revision 1.147  1999/08/09 22:19:55  peter
-    * classes vmt changed to only positive addresses
-    * sharedlib creation is working
-
-  Revision 1.146  1999/08/07 14:21:00  florian
-    * some small problems fixed
-
-  Revision 1.145  1999/08/07 13:36:54  daniel
-  * Recommitted the arraydef overflow bugfix.
-
-  Revision 1.143  1999/08/06 11:13:30  peter
-    * fixed message which was wrong styled
-
-  Revision 1.142  1999/08/05 22:41:34  daniel
-  *** empty log message ***
-
-  Revision 1.141  1999/08/05 16:53:13  peter
-    * V_Fatal=1, all other V_ are also increased
-    * Check for local procedure when assigning procvar
-    * fixed comment parsing because directives
-    * oldtp mode directives better supported
-    * added some messages to errore.msg
-
-  Revision 1.140  1999/08/04 13:03:07  jonas
-    * all tokens now start with an underscore
-    * PowerPC compiles!!
-
-  Revision 1.139  1999/08/03 22:03:14  peter
-    * moved bitmask constants to sets
-    * some other type/const renamings
-
-  Revision 1.138  1999/08/02 21:29:02  florian
-    * the main branch psub.pas is now used for
-      newcg compiler
-
-  Revision 1.137  1999/07/31 22:37:17  michael
-  * Fix of initialization information generation
-
-  Revision 1.136  1999/07/29 20:54:07  peter
-    * write .size also
-
-  Revision 1.135  1999/07/27 23:42:18  peter
-    * indirect type referencing is now allowed
-
-  Revision 1.134  1999/07/23 23:07:03  peter
-    * fixed stabs for record which still used savesize
-
-  Revision 1.133  1999/07/23 16:05:28  peter
-    * alignment is now saved in the symtable
-    * C alignment added for records
-    * PPU version increased to solve .12 <-> .13 probs
-
-  Revision 1.132  1999/07/18 14:47:32  florian
-    * bug 487 fixed, (inc(<property>) isn't allowed)
-    * more fixes to compile with Delphi
-
-  Revision 1.131  1999/07/06 21:48:27  florian
-    * a lot bug fixes:
-       - po_external isn't any longer necessary for procedure compatibility
-       - m_tp_procvar is in -Sd now available
-       - error messages of procedure variables improved
-       - return values with init./finalization fixed
-       - data types with init./finalization aren't any longer allowed in variant
-         record
-
-  Revision 1.130  1999/06/22 16:24:44  pierre
-   * local browser stuff corrected
-
-  Revision 1.129  1999/06/02 22:44:21  pierre
-   * previous wrong log corrected
-
-  Revision 1.128  1999/06/02 22:25:52  pierre
-  * changed $ifdef FPC @ into $ifndef TP
-
-  Revision 1.127  1999/06/02 10:26:50  florian
-    * corrected order of parameter type for -vb
-
-  Revision 1.126  1999/06/02 10:11:50  florian
-    * make cycle fixed i.e. compilation with 0.99.10
-    * some fixes for qword
-    * start of register calling conventions
-
-  Revision 1.125  1999/06/01 14:45:56  peter
-    * @procvar is now always needed for FPC
-
-  Revision 1.124  1999/05/31 16:42:33  peter
-    * interfacedef flag for procdef if it's defined in the interface, to
-      make a difference with 'forward;' directive forwarddef. Fixes 253
-
-  Revision 1.123  1999/05/27 19:45:02  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.122  1999/05/23 18:42:14  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.121  1999/05/21 13:55:19  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.120  1999/05/20 22:22:43  pierre
-    + added synonym filed for ttypesym
-      allows a clean disposal of tdefs and related ttypesyms
-
-  Revision 1.119  1999/05/19 16:48:26  florian
-    * tdef.typename: returns a now a proper type name for the most types
-
-  Revision 1.118  1999/05/19 12:08:11  florian
-    * tobject wasn't set as default anchestor, was a problem with the new ppu
-      handling
-
-  Revision 1.117  1999/05/17 21:57:15  florian
-    * new temporary ansistring handling
-
-  Revision 1.116  1999/05/16 02:26:51  peter
-    * fixed loading of classrefdef
-
-  Revision 1.115  1999/05/14 17:52:26  peter
-    * new deref code
-
-  Revision 1.114  1999/05/13 21:59:41  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.113  1999/05/12 00:19:58  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.112  1999/05/08 19:52:35  peter
-    + MessagePos() which is enhanced Message() function but also gets the
-      position info
-    * Removed comp warnings
-
-  Revision 1.111  1999/05/07 11:06:37  florian
-    * enumeration type names are now written in lowercase (rtti)
-
-  Revision 1.110  1999/05/06 09:05:28  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.109  1999/05/05 10:05:56  florian
-    * a delphi compiled compiler recompiles ppc
-
-  Revision 1.108  1999/04/28 22:30:52  pierre
-   * delete -> deleteindex in tdef.correct_owner_symtable
-
-  Revision 1.107  1999/04/28 06:02:11  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.106  1999/04/26 18:30:01  peter
-    * farpointerdef moved into pointerdef.is_far
-
-  Revision 1.105  1999/04/26 13:31:47  peter
-    * release storenumber,double_checksum
-
-  Revision 1.104  1999/04/21 09:43:50  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.103  1999/04/19 09:28:20  peter
-    * fixed crash when writing overload operator to ppu
-
-  Revision 1.102  1999/04/17 22:01:28  pierre
-   * typo error fix in STORENUMBER code
-
-  Revision 1.101  1999/04/14 09:14:58  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.100  1999/04/08 15:57:51  peter
-    + subrange checking for readln()
-
-  Revision 1.99  1999/04/07 15:39:32  pierre
-    + double_checksum code added
-
-  Revision 1.98  1999/03/06 17:24:16  peter
-    * reset savesize in tdef.init
-
-  Revision 1.97  1999/03/01 13:45:04  pierre
-   + added staticppusymtable symtable type for local browsing
-
-  Revision 1.96  1999/02/25 21:02:52  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.95  1999/02/23 18:29:23  pierre
-    * win32 compilation error fix
-    + some work for local browser (not cl=omplete yet)
-
-  Revision 1.94  1999/02/22 20:13:38  florian
-    + first implementation of message keyword
-
-  Revision 1.93  1999/02/22 13:07:07  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.92  1999/02/17 10:14:20  peter
-    * set the first enumsym also for subrange types
-
-  Revision 1.91  1999/02/08 09:51:21  pierre
-   * gdb info for local functions was wrong
-
-  Revision 1.90  1999/01/26 09:57:29  pierre
-   * open arrays stabs changed
-
-  Revision 1.89  1999/01/22 17:29:30  pierre
-   * overflow in addname for open arrays removed
-
-  Revision 1.88  1999/01/20 14:18:39  pierre
-    * bugs related to mangledname solved
-      - linux external without name
-      -external procs already used
-      (added count and is_used boolean fiels in tprocvar)
-
-  Revision 1.87  1999/01/19 10:56:05  pierre
-   typeof(object) without vmt generates an error instead of an internalerror
-
-  Revision 1.86  1999/01/12 14:25:32  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.85  1998/12/30 22:15:52  peter
-    + farpointer type
-    * absolutesym now also stores if its far
-
-  Revision 1.84  1998/12/30 13:41:12  peter
-    * released valuepara
-
-  Revision 1.83  1998/12/21 14:03:08  pierre
-   * procvar stabs correction
-
-  Revision 1.82  1998/12/19 00:23:52  florian
-    * ansistring memory leaks fixed
-
-  Revision 1.81  1998/12/11 08:57:22  pierre
-   * internal gdb types for booleans and 64bit integers
-
-  Revision 1.80  1998/12/10 09:47:26  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.79  1998/12/08 10:18:12  peter
-    + -gh for heaptrc unit
-
-  Revision 1.78  1998/12/08 09:06:30  pierre
-   + constructor destructor info for gdbpas
-
-  Revision 1.77  1998/12/01 23:37:39  pierre
-   * function type problem for gdb fix
-
-  Revision 1.76  1998/11/29 21:45:48  florian
-    * problem with arrays with init tables fixed
-
-  Revision 1.75  1998/11/29 12:45:59  peter
-    * hack for arraydef.size overflow
-
-  Revision 1.74  1998/11/27 14:50:47  peter
-    + open strings, $P switch support
-
-  Revision 1.73  1998/11/26 14:47:00  michael
-  + Fixed RTTI constants
-
-  Revision 1.72  1998/11/25 14:35:28  florian
-    * writting of rtti for properties fixed
-
-  Revision 1.71  1998/11/20 15:35:59  florian
-    * problems with rtti fixed, hope it works
-
-  Revision 1.70  1998/11/18 15:44:16  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.69  1998/11/10 17:54:56  peter
-    * removed warning
-
-  Revision 1.68  1998/11/05 23:34:36  peter
-    * don't dispose staticsymtable (caused crash under tp7 after a fatal
-      error)
-
-  Revision 1.67  1998/11/05 12:02:56  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.66  1998/10/26 22:58:22  florian
-    * new introduded problem with classes fix, the parent class wasn't set
-      correct, if the class was defined forward before
-
-  Revision 1.65  1998/10/26 14:19:28  pierre
-    + added options -lS and -lT for source and target os output
-      (to have a easier way to test OS_SOURCE abd OS_TARGET in makefiles)
-    * several problems with rtti data
-      (type of sym was not checked)
-      assumed to be varsym when they could be procsym or property syms !!
-
-  Revision 1.64  1998/10/22 17:11:21  pierre
-    + terminated the include exclude implementation for i386
-    * enums inside records fixed
-
-  Revision 1.63  1998/10/20 09:32:56  peter
-    * removed some unused vars
-
-  Revision 1.62  1998/10/20 08:06:58  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.61  1998/10/19 08:55:05  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.60  1998/10/16 13:12:53  pierre
-    * added vmt_offsets in destructors code also !!!
-    * vmt_offset code for m68k
-
-  Revision 1.59  1998/10/16 08:51:51  peter
-    + target_os.stackalignment
-    + stack can be aligned at 2 or 4 byte boundaries
-
-  Revision 1.58  1998/10/15 15:13:30  pierre
-    + added oo_hasconstructor and oo_hasdestructor
-      for objects options
-
-  Revision 1.57  1998/10/14 15:54:20  pierre
-    * smallsets are not entirely implemented for
-      m68k added a ifdef usesmallset
-      that is allways defined for i386
-      (enables testing for m68k)
-
-  Revision 1.56  1998/10/09 11:47:56  pierre
-    * still more memory leaks fixes !!
-
-  Revision 1.55  1998/10/06 17:16:55  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.54  1998/10/05 21:33:28  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.53  1998/10/05 12:48:39  pierre
-    * wrong handling of range check for arrays fixed
-
-  Revision 1.52  1998/10/02 07:20:38  florian
-    * range checking in units doesn't work if the units are smartlinked, fixed
-
-  Revision 1.51  1998/09/25 12:01:41  florian
-    * tobjectdef.symtable.datasize was set to savesize, this is wrong now
-      because the symtable size is read from the ppu file
-
-  Revision 1.50  1998/09/23 15:46:40  florian
-    * problem with with and classes fixed
-
-  Revision 1.49  1998/09/23 12:03:55  peter
-    * overloading fix for array of const
-
-  Revision 1.48  1998/09/22 15:37:23  peter
-    + array of const start
-
-  Revision 1.47  1998/09/21 15:46:01  michael
-  Applied florians fix for check_rec_inittable
-
-  Revision 1.46  1998/09/21 08:45:21  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.45  1998/09/20 08:31:29  florian
-    + bit 6 of tpropinfo.propprocs is set, if the property contains a
-      constant index
-
-  Revision 1.44  1998/09/19 15:23:58  florian
-    * rtti for ordtypes corrected
-
-  Revision 1.43  1998/09/18 17:12:40  florian
-    * problem with writing of class references fixed
-
-  Revision 1.42  1998/09/17 13:41:20  pierre
-  sizeof(TPOINT) problem
-
-  Revision 1.40.2.2  1998/09/17 08:42:33  pierre
-  TPOINT sizeof fix
-
-  Revision 1.41  1998/09/15 17:39:30  jonas
-    + bugfix from bugfix branch
-
-  Revision 1.40.2.1  1998/09/15 17:35:32  jonas
-    * chenged string_typ in tstringdef.wideload from ansistring to widestring
-
-  Revision 1.40  1998/09/09 15:34:00  peter
-    * removed warnings
-
-  Revision 1.39  1998/09/08 10:23:44  pierre
-    * name field of filedef corrected
-
-  Revision 1.38  1998/09/07 23:10:23  florian
-    * a lot of stuff fixed regarding rtti and publishing of properties,
-      basics should now work
-
-  Revision 1.37  1998/09/07 19:33:24  florian
-    + some stuff for property rtti added:
-       - NameIndex of the TPropInfo record is now written correctly
-       - the DEFAULT/NODEFAULT keyword is supported now
-       - the default value and the storedsym/def are now written to
-         the PPU fiel
-
-  Revision 1.36  1998/09/07 17:37:01  florian
-    * first fixes for published properties
-
-  Revision 1.35  1998/09/06 22:42:02  florian
-    + rtti genreation for properties added
-
-  Revision 1.34  1998/09/04 18:15:02  peter
-    * filedef updated
-
-  Revision 1.33  1998/09/03 17:08:49  pierre
-    * better lines for stabs
-      (no scroll back to if before else part
-      no return to case line at jump outside case)
-    + source lines also if not in order
-
-  Revision 1.32  1998/09/03 16:03:20  florian
-    + rtti generation
-    * init table generation changed
-
-  Revision 1.31  1998/09/02 15:14:28  peter
-    * enum packing changed from len to max
-
-  Revision 1.30  1998/09/01 17:37:29  peter
-    * removed debug writeln :(
-
-  Revision 1.29  1998/09/01 12:53:25  peter
-    + aktpackenum
-
-  Revision 1.28  1998/09/01 07:54:22  pierre
-    * UseBrowser a little updated (might still be buggy !!)
-    * bug in psub.pas in function specifier removed
-    * stdcall allowed in interface and in implementation
-      (FPC will not yet complain if it is missing in either part
-      because stdcall is only a dummy !!)
-
-  Revision 1.27  1998/08/28 12:51:43  florian
-    + ansistring to pchar type cast fixed
-
-  Revision 1.26  1998/08/25 12:42:44  pierre
-    * CDECL changed to CVAR for variables
-      specifications are read in structures also
-    + started adding GPC compatibility mode ( option  -Sp)
-    * names changed to lowercase
-
-  Revision 1.25  1998/08/23 21:04:38  florian
-    + rtti generation for classes added
-    + new/dispose do now also a call to INITIALIZE/FINALIZE, if necessaray
-
-  Revision 1.24  1998/08/20 12:53:26  peter
-    * object_options are always written for object syms
-
-  Revision 1.23  1998/08/19 00:42:42  peter
-    + subrange types for enums
-    + checking for bounds type with ranges
-
-  Revision 1.22  1998/08/17 10:10:10  peter
-    - removed OLDPPU
-
-  Revision 1.21  1998/08/10 14:50:28  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.20  1998/07/18 22:54:30  florian
-    * some ansi/wide/longstring support fixed:
-       o parameter passing
-       o returning as result from functions
-
-  Revision 1.19  1998/07/14 14:47:05  peter
-    * released NEWINPUT
-
-  Revision 1.18  1998/07/10 10:51:04  peter
-    * m68k updates
-
-  Revision 1.16  1998/07/07 11:20:13  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.15  1998/06/24 14:48:37  peter
-    * ifdef newppu -> ifndef oldppu
-
-  Revision 1.14  1998/06/16 08:56:31  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.13  1998/06/15 15:38:09  pierre
-    * small bug in systems.pas corrected
-    + operators in different units better hanlded
-
-  Revision 1.12  1998/06/15 14:30:12  daniel
-
-  * Reverted my changes.
-
-  Revision 1.10  1998/06/13 00:10:16  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.9  1998/06/12 14:10:37  michael
-  * Fixed wrong code for ansistring
-
-  Revision 1.8  1998/06/11 10:11:58  peter
-    * -gb works again
-
-  Revision 1.7  1998/06/07 15:30:25  florian
-    + first working rtti
-    + data init/final. for local variables
-
-  Revision 1.6  1998/06/05 14:37:37  pierre
-    * fixes for inline for operators
-    * inline procedure more correctly restricted
-
-  Revision 1.5  1998/06/04 23:52:01  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.4  1998/06/04 09:55:45  pierre
-    * demangled name of procsym reworked to become independant of the mangling
-      scheme
-
-  Revision 1.3  1998/06/03 22:49:03  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.2  1998/05/31 14:13:37  peter
-    * fixed call bugs with assembler readers
-    + OPR_SYMBOL to hold a symbol in the asm parser
-    * fixed staticsymtable vars which were acessed through %ebp instead of
-      name
-
-  Revision 1.1  1998/05/27 19:45:09  peter
-    * symtable.pas splitted into includefiles
-    * symtable adapted for $ifndef OLDPPU
-
 }
 }

+ 4 - 87
compiler/symdefh.inc

@@ -530,7 +530,10 @@
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.44  1999-10-26 12:30:45  peter
+  Revision 1.45  1999-11-06 14:34:27  peter
+    * truncated log to 20 revs
+
+  Revision 1.44  1999/10/26 12:30:45  peter
     * const parameter is now checked
     * const parameter is now checked
     * better and generic check if a node can be used for assigning
     * better and generic check if a node can be used for assigning
     * export fixes
     * export fixes
@@ -625,90 +628,4 @@
       position info
       position info
     * Removed comp warnings
     * Removed comp warnings
 
 
-  Revision 1.24  1999/05/06 09:05:30  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.23  1999/04/26 18:30:02  peter
-    * farpointerdef moved into pointerdef.is_far
-
-  Revision 1.22  1999/04/26 13:31:49  peter
-    * release storenumber,double_checksum
-
-  Revision 1.21  1999/04/21 09:43:52  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.20  1999/04/14 09:15:00  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.19  1999/04/08 15:57:52  peter
-    + subrange checking for readln()
-
-  Revision 1.18  1999/03/02 18:24:21  peter
-    * fixed overloading of array of char
-
-  Revision 1.17  1999/03/01 13:45:06  pierre
-   + added staticppusymtable symtable type for local browsing
-
-  Revision 1.16  1999/02/22 20:13:39  florian
-    + first implementation of message keyword
-
-  Revision 1.15  1999/01/20 14:18:40  pierre
-    * bugs related to mangledname solved
-      - linux external without name
-      -external procs already used
-      (added count and is_used boolean fiels in tprocvar)
-
-  Revision 1.14  1999/01/12 14:25:33  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.13  1998/12/30 22:15:53  peter
-    + farpointer type
-    * absolutesym now also stores if its far
-
-  Revision 1.12  1998/12/10 09:47:28  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.11  1998/11/29 21:45:49  florian
-    * problem with arrays with init tables fixed
-
-  Revision 1.10  1998/11/20 15:36:00  florian
-    * problems with rtti fixed, hope it works
-
-  Revision 1.9  1998/11/10 10:09:14  peter
-    * va_list -> array of const
-
-  Revision 1.8  1998/11/09 11:44:37  peter
-    + va_list for printf support
-
-  Revision 1.7  1998/11/05 12:02:59  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.6  1998/10/22 17:11:23  pierre
-    + terminated the include exclude implementation for i386
-    * enums inside records fixed
-
-  Revision 1.5  1998/10/16 13:12:55  pierre
-    * added vmt_offsets in destructors code also !!!
-    * vmt_offset code for m68k
-
-  Revision 1.4  1998/10/16 08:51:52  peter
-    + target_os.stackalignment
-    + stack can be aligned at 2 or 4 byte boundaries
-
-  Revision 1.3  1998/10/05 21:33:30  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.2  1998/10/02 07:20:40  florian
-    * range checking in units doesn't work if the units are smartlinked, fixed
-
-  Revision 1.1  1998/09/23 12:03:57  peter
-    * overloading fix for array of const
-
 }
 }

+ 4 - 146
compiler/symppu.inc

@@ -756,7 +756,10 @@
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.52  1999-11-05 17:18:03  pierre
+  Revision 1.53  1999-11-06 14:34:27  peter
+    * truncated log to 20 revs
+
+  Revision 1.52  1999/11/05 17:18:03  pierre
     * local browsing works at first level
     * local browsing works at first level
       ie for function defined in interface or implementation
       ie for function defined in interface or implementation
       not yet for functions inside other functions
       not yet for functions inside other functions
@@ -834,149 +837,4 @@
     * win32 compilation error fix
     * win32 compilation error fix
     + some work for local browser (not cl=omplete yet)
     + some work for local browser (not cl=omplete yet)
 
 
-  Revision 1.32  1999/02/22 13:07:08  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.31  1999/02/16 00:48:25  peter
-    * save in the ppu if linked with obj file instead of using the
-      library flag, so the .inc files are also checked
-
-  Revision 1.30  1999/02/05 08:54:30  pierre
-    + linkofiles splitted inot linkofiles and linkunitfiles
-      because linkofiles must be stored with directory
-      to enabled linking of different objects with same name
-      in a different directory
-
-  Revision 1.29  1999/01/20 10:16:46  peter
-    * don't update crc when writing objs,libs and sources
-
-  Revision 1.28  1999/01/12 14:25:35  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.27  1998/12/08 10:18:14  peter
-    + -gh for heaptrc unit
-
-  Revision 1.26  1998/11/26 14:36:02  peter
-    * set also library flag if smartlinking and outputname is different
-
-  Revision 1.25  1998/10/26 09:35:47  peter
-    * don't count includefiles which are found in the includepath for a
-      recompile.
-
-  Revision 1.24  1998/10/20 08:06:59  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.23  1998/10/16 13:37:24  florian
-    + switch -FD added to specify the path for utilities
-
-  Revision 1.22  1998/10/14 13:38:24  peter
-    * fixed path with staticlib/objects in ppufiles
-
-  Revision 1.21  1998/10/14 10:45:10  pierre
-    * ppu problems for m68k fixed (at least in cross compiling)
-    * one last memory leak for sysamiga fixed
-    * the amiga RTL compiles now completely !!
-
-  Revision 1.20  1998/10/13 13:10:30  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.19  1998/10/08 23:29:07  peter
-    * -vu shows unit info, -vt shows tried/used files
-
-  Revision 1.18  1998/09/28 16:57:27  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.17  1998/09/22 17:13:53  pierre
-    + browsing updated and developed
-      records and objects fields are also stored
-
-  Revision 1.16  1998/09/22 15:40:56  peter
-    * some extra ifdef GDB
-
-  Revision 1.15  1998/09/21 08:45:23  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.14  1998/09/01 07:54:24  pierre
-    * UseBrowser a little updated (might still be buggy !!)
-    * bug in psub.pas in function specifier removed
-    * stdcall allowed in interface and in implementation
-      (FPC will not yet complain if it is missing in either part
-      because stdcall is only a dummy !!)
-
-  Revision 1.13  1998/08/17 10:10:11  peter
-    - removed OLDPPU
-
-  Revision 1.12  1998/08/17 09:17:53  peter
-    * static/shared linking updates
-
-  Revision 1.11  1998/08/16 20:32:49  peter
-    * crcs of used units are not important for the current crc, reduces the
-      amount of recompiles
-
-  Revision 1.10  1998/08/13 10:57:30  peter
-    * constant sets are now written correctly to the ppufile
-
-  Revision 1.9  1998/08/11 15:31:41  peter
-    * write extended to ppu file
-    * new version 0.99.7
-
-  Revision 1.8  1998/08/10 14:50:29  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.7  1998/07/14 14:47:07  peter
-    * released NEWINPUT
-
-  Revision 1.6  1998/07/07 11:20:14  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.5  1998/06/24 14:48:39  peter
-    * ifdef newppu -> ifndef oldppu
-
-  Revision 1.4  1998/06/16 08:56:32  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.3  1998/06/13 00:10:17  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.2  1998/05/28 14:40:28  peter
-    * fixes for newppu, remake3 works now with it
-
-  Revision 1.1  1998/05/27 19:45:09  peter
-    * symtable.pas splitted into includefiles
-    * symtable adapted for $ifdef NEWPPU
-
 }
 }

+ 4 - 426
compiler/symsym.inc

@@ -2139,7 +2139,10 @@
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.123  1999-11-05 17:18:03  pierre
+  Revision 1.124  1999-11-06 14:34:27  peter
+    * truncated log to 20 revs
+
+  Revision 1.123  1999/11/05 17:18:03  pierre
     * local browsing works at first level
     * local browsing works at first level
       ie for function defined in interface or implementation
       ie for function defined in interface or implementation
       not yet for functions inside other functions
       not yet for functions inside other functions
@@ -2219,429 +2222,4 @@
   Revision 1.104  1999/07/27 23:42:21  peter
   Revision 1.104  1999/07/27 23:42:21  peter
     * indirect type referencing is now allowed
     * indirect type referencing is now allowed
 
 
-  Revision 1.103  1999/07/24 15:12:59  michael
-  changes for resourcestrings
-
-  Revision 1.102  1999/07/24 13:36:23  michael
-  * Fixed resourcestring writing to units
-
-  Revision 1.101  1999/07/23 20:59:23  peter
-    * more C packing fixes
-
-  Revision 1.100  1999/07/23 16:05:32  peter
-    * alignment is now saved in the symtable
-    * C alignment added for records
-    * PPU version increased to solve .12 <-> .13 probs
-
-  Revision 1.99  1999/07/23 11:33:23  peter
-    * removed oldppu from propertysym
-
-  Revision 1.98  1999/07/22 09:37:55  florian
-    + resourcestring implemented
-    + start of longstring support
-
-  Revision 1.97  1999/07/05 12:13:25  florian
-    * property reading from PPU fixed (new PPU format), it uses now writesym...
-
-  Revision 1.96  1999/06/28 10:49:48  pierre
-   merged from 0-99-12 branch
-
-  Revision 1.94.2.2  1999/06/28 10:32:29  pierre
-   * fixes bug453
-
-  Revision 1.94.2.1  1999/06/22 16:26:45  pierre
-   * local browser stuff corrected
-
-  Revision 1.94  1999/06/03 16:25:05  pierre
-   * local Cvar stabs corrected
-
-  Revision 1.93  1999/05/27 19:45:06  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.92  1999/05/21 13:55:21  peter
-    * NEWLAB for label as symbol
-
-  Revision 1.91  1999/05/20 22:22:44  pierre
-    + added synonym filed for ttypesym
-      allows a clean disposal of tdefs and related ttypesyms
-
-  Revision 1.90  1999/05/17 13:11:40  pierre
-   * unitsym security stuff
-
-  Revision 1.89  1999/05/13 21:59:45  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.88  1999/05/10 09:01:43  peter
-    * small message fixes
-
-  Revision 1.87  1999/05/08 19:52:38  peter
-    + MessagePos() which is enhanced Message() function but also gets the
-      position info
-    * Removed comp warnings
-
-  Revision 1.86  1999/05/07 00:06:22  pierre
-    + added aligmnent of data for typed consts
-      for var it is done by AS or LD or in ag386bin for direct object output
-
-  Revision 1.85  1999/05/04 21:45:07  florian
-    * changes to compile it with Delphi 4.0
-
-  Revision 1.84  1999/05/04 16:05:13  pierre
-   * fix for unitsym problem
-
-  Revision 1.83  1999/04/28 06:02:13  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.82  1999/04/26 13:31:52  peter
-    * release storenumber,double_checksum
-
-  Revision 1.81  1999/04/25 22:38:39  pierre
-    + added is_really_const booleanfield for typedconstsym
-      for Delphi in $J- mode (not yet implemented !)
-
-  Revision 1.80  1999/04/21 09:43:54  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.79  1999/04/17 13:16:21  peter
-    * fixes for storenumber
-
-  Revision 1.78  1999/04/14 09:15:02  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.77  1999/04/08 10:11:32  pierre
-   + enable uninitilized warnings for static symbols
-
-  Revision 1.76  1999/03/31 13:55:21  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.75  1999/03/24 23:17:27  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.74  1999/02/23 18:29:27  pierre
-    * win32 compilation error fix
-    + some work for local browser (not cl=omplete yet)
-
-  Revision 1.73  1999/02/22 13:07:09  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.72  1999/02/08 09:51:22  pierre
-   * gdb info for local functions was wrong
-
-  Revision 1.71  1999/01/23 23:29:41  florian
-    * first running version of the new code generator
-    * when compiling exceptions under Linux fixed
-
-  Revision 1.70  1999/01/21 22:10:48  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.69  1999/01/20 10:20:20  peter
-    * don't make localvar copies for assembler procedures
-
-  Revision 1.68  1999/01/12 14:25:36  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.67  1998/12/30 22:15:54  peter
-    + farpointer type
-    * absolutesym now also stores if its far
-
-  Revision 1.66  1998/12/30 13:41:14  peter
-    * released valuepara
-
-  Revision 1.65  1998/12/26 15:35:44  peter
-    + read/write of constnil
-
-  Revision 1.64  1998/12/08 10:18:15  peter
-    + -gh for heaptrc unit
-
-  Revision 1.63  1998/11/28 16:20:56  peter
-    + support for dll variables
-
-  Revision 1.62  1998/11/27 14:50:48  peter
-    + open strings, $P switch support
-
-  Revision 1.61  1998/11/18 15:44:18  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.60  1998/11/16 10:13:51  peter
-    * label defines are checked at the end of the proc
-
-  Revision 1.59  1998/11/13 12:09:11  peter
-    * unused label is now a warning
-
-  Revision 1.58  1998/11/10 10:50:57  pierre
-   * temporary fix for long mangled procsym names
-
-  Revision 1.57  1998/11/05 23:39:31  peter
-    + typedconst.getsize
-
-  Revision 1.56  1998/10/28 18:26:18  pierre
-   * removed some erros after other errors (introduced by useexcept)
-   * stabs works again correctly (for how long !)
-
-  Revision 1.55  1998/10/20 08:07:00  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.54  1998/10/19 08:55:07  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.53  1998/10/16 08:51:53  peter
-    + target_os.stackalignment
-    + stack can be aligned at 2 or 4 byte boundaries
-
-  Revision 1.52  1998/10/08 17:17:32  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.51  1998/10/08 13:48:50  peter
-    * fixed memory leaks for do nothing source
-    * fixed unit interdependency
-
-  Revision 1.50  1998/10/06 17:16:56  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.49  1998/10/01 09:22:55  peter
-    * fixed value openarray
-    * ungettemp of arrayconstruct
-
-  Revision 1.48  1998/09/26 17:45:44  peter
-    + idtoken and only one token table
-
-  Revision 1.47  1998/09/24 15:11:17  peter
-    * fixed enum for not GDB
-
-  Revision 1.46  1998/09/23 15:39:13  pierre
-    * browser bugfixes
-      was adding a reference when looking for the symbol
-      if -bSYM_NAME was used
-
-  Revision 1.45  1998/09/21 08:45:24  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.44  1998/09/18 16:03:47  florian
-    * some changes to compile with Delphi
-
-  Revision 1.43  1998/09/18 08:01:38  pierre
-    + improvement on the usebrowser part
-      (does not work correctly for now)
-
-  Revision 1.42  1998/09/07 19:33:25  florian
-    + some stuff for property rtti added:
-       - NameIndex of the TPropInfo record is now written correctly
-       - the DEFAULT/NODEFAULT keyword is supported now
-       - the default value and the storedsym/def are now written to
-         the PPU fiel
-
-  Revision 1.41  1998/09/07 18:46:12  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.40  1998/09/07 17:37:04  florian
-    * first fixes for published properties
-
-  Revision 1.39  1998/09/05 22:11:02  florian
-    + switch -vb
-    * while/repeat loops accept now also word/longbool conditions
-    * makebooltojump did an invalid ungetregister32, fixed
-
-  Revision 1.38  1998/09/01 12:53:26  peter
-    + aktpackenum
-
-  Revision 1.37  1998/09/01 07:54:25  pierre
-    * UseBrowser a little updated (might still be buggy !!)
-    * bug in psub.pas in function specifier removed
-    * stdcall allowed in interface and in implementation
-      (FPC will not yet complain if it is missing in either part
-      because stdcall is only a dummy !!)
-
-  Revision 1.36  1998/08/25 13:09:26  pierre
-    * corrected mangling sheme :
-      cvar add Cprefix to the mixed case name whereas
-      export or public use direct name
-
-  Revision 1.35  1998/08/25 12:42:46  pierre
-    * CDECL changed to CVAR for variables
-      specifications are read in structures also
-    + started adding GPC compatibility mode ( option  -Sp)
-    * names changed to lowercase
-
-  Revision 1.34  1998/08/21 14:08:53  pierre
-    + TEST_FUNCRET now default (old code removed)
-      works also for m68k (at least compiles)
-
-  Revision 1.33  1998/08/20 12:53:27  peter
-    * object_options are always written for object syms
-
-  Revision 1.32  1998/08/20 09:26:46  pierre
-    + funcret setting in underproc testing
-      compile with _dTEST_FUNCRET
-
-  Revision 1.31  1998/08/17 10:10:12  peter
-    - removed OLDPPU
-
-  Revision 1.30  1998/08/13 10:57:29  peter
-    * constant sets are now written correctly to the ppufile
-
-  Revision 1.29  1998/08/11 15:31:42  peter
-    * write extended to ppu file
-    * new version 0.99.7
-
-  Revision 1.28  1998/08/11 14:07:27  peter
-    * fixed pushing of high value for openarray
-
-  Revision 1.27  1998/08/10 14:50:31  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.26  1998/08/10 10:18:35  peter
-    + Compiler,Comphook unit which are the new interface units to the
-      compiler
-
-  Revision 1.25  1998/07/30 11:18:19  florian
-    + first implementation of try ... except on .. do end;
-    * limitiation of 65535 bytes parameters for cdecl removed
-
-  Revision 1.24  1998/07/20 18:40:16  florian
-    * handling of ansi string constants should now work
-
-  Revision 1.23  1998/07/14 21:37:24  peter
-    * fixed packrecords as discussed at the alias
-
-  Revision 1.22  1998/07/14 14:47:08  peter
-    * released NEWINPUT
-
-  Revision 1.21  1998/07/13 21:17:38  florian
-    * changed to compile with TP
-
-  Revision 1.20  1998/07/10 00:00:05  peter
-    * fixed ttypesym bug finally
-    * fileinfo in the symtable and better using for unused vars
-
-  Revision 1.19  1998/07/07 17:40:39  peter
-    * packrecords 4 works
-    * word aligning of parameters
-
-  Revision 1.18  1998/07/07 11:20:15  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.17  1998/06/24 14:48:40  peter
-    * ifdef newppu -> ifndef oldppu
-
-  Revision 1.16  1998/06/19 15:40:42  peter
-    * removed cosntructor/constructor warning and 0.99.5 recompiles it again
-
-  Revision 1.15  1998/06/17 14:10:18  peter
-    * small os2 fixes
-    * fixed interdependent units with newppu (remake3 under linux works now)
-
-  Revision 1.14  1998/06/16 08:56:34  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.13  1998/06/15 15:38:10  pierre
-    * small bug in systems.pas corrected
-    + operators in different units better hanlded
-
-  Revision 1.12  1998/06/15 14:23:44  daniel
-
-  * Reverted my changes.
-
-  Revision 1.10  1998/06/13 00:10:18  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.9  1998/06/12 16:15:35  pierre
-    * external name 'C_var';
-      export name 'intern_C_var';
-      cdecl;
-      cdecl;external;
-      are now supported only with -Sv switch
-
-  Revision 1.8  1998/06/11 10:11:59  peter
-    * -gb works again
-
-  Revision 1.7  1998/06/09 16:01:51  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.6  1998/06/08 22:59:53  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.5  1998/06/04 23:52:02  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.4  1998/06/04 09:55:46  pierre
-    * demangled name of procsym reworked to become independant of the mangling scheme
-
-  Revision 1.3  1998/06/03 22:14:20  florian
-    * problem with sizes of classes fixed (if the anchestor was declared
-      forward, the compiler doesn't update the child classes size)
-
-  Revision 1.2  1998/05/28 14:40:29  peter
-    * fixes for newppu, remake3 works now with it
-
-  Revision 1.1  1998/05/27 19:45:09  peter
-    * symtable.pas splitted into includefiles
-    * symtable adapted for $ifndef OLDPPU
-
 }
 }

+ 4 - 66
compiler/symsymh.inc

@@ -328,7 +328,10 @@
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.36  1999-10-01 08:02:48  peter
+  Revision 1.37  1999-11-06 14:34:28  peter
+    * truncated log to 20 revs
+
+  Revision 1.36  1999/10/01 08:02:48  peter
     * forward type declaration rewritten
     * forward type declaration rewritten
 
 
   Revision 1.35  1999/09/26 21:30:22  peter
   Revision 1.35  1999/09/26 21:30:22  peter
@@ -403,69 +406,4 @@
   Revision 1.17  1999/03/31 13:55:23  peter
   Revision 1.17  1999/03/31 13:55:23  peter
     * assembler inlining working for ag386bin
     * assembler inlining working for ag386bin
 
 
-  Revision 1.16  1999/03/24 23:17:29  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.15  1999/02/22 13:07:11  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.14  1999/01/20 10:20:22  peter
-    * don't make localvar copies for assembler procedures
-
-  Revision 1.13  1999/01/14 21:49:59  peter
-    * fixed forwardpointer problem with multiple forwards for the same
-      typesym. It now uses a linkedlist instead of a single pointer
-
-  Revision 1.12  1999/01/12 14:25:37  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.11  1998/12/30 22:15:55  peter
-    + farpointer type
-    * absolutesym now also stores if its far
-
-  Revision 1.10  1998/12/30 13:41:15  peter
-    * released valuepara
-
-  Revision 1.9  1998/11/28 16:20:57  peter
-    + support for dll variables
-
-  Revision 1.8  1998/11/18 15:44:19  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.7  1998/11/16 10:13:50  peter
-    * label defines are checked at the end of the proc
-
-  Revision 1.6  1998/11/13 10:18:12  peter
-    + nil constants
-
-  Revision 1.5  1998/11/05 23:39:32  peter
-    + typedconst.getsize
-
-  Revision 1.4  1998/10/20 08:07:02  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.3  1998/10/08 17:17:34  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.2  1998/09/24 15:11:18  peter
-    * fixed enum for not GDB
-
-  Revision 1.1  1998/09/23 12:03:57  peter
-    * overloading fix for array of const
-
 }
 }

+ 4 - 772
compiler/symtable.pas

@@ -2465,7 +2465,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.57  1999-11-05 17:18:03  pierre
+  Revision 1.58  1999-11-06 14:34:28  peter
+    * truncated log to 20 revs
+
+  Revision 1.57  1999/11/05 17:18:03  pierre
     * local browsing works at first level
     * local browsing works at first level
       ie for function defined in interface or implementation
       ie for function defined in interface or implementation
       not yet for functions inside other functions
       not yet for functions inside other functions
@@ -2550,775 +2553,4 @@ end.
     * oldtp mode directives better supported
     * oldtp mode directives better supported
     * added some messages to errore.msg
     * added some messages to errore.msg
 
 
-  Revision 1.37  1999/08/04 13:03:09  jonas
-    * all tokens now start with an underscore
-    * PowerPC compiles!!
-
-  Revision 1.36  1999/08/04 00:23:31  florian
-    * renamed i386asm and i386base to cpuasm and cpubase
-
-  Revision 1.35  1999/08/03 22:03:22  peter
-    * moved bitmask constants to sets
-    * some other type/const renamings
-
-  Revision 1.34  1999/08/03 17:51:45  florian
-    * reduced memory usage by factor 2-3 (it
-      improved also the speed) by reducing the
-      growsize of the symbol tables
-
-  Revision 1.33  1999/08/03 00:03:24  florian
-    * added bestrealdef for alpha and powerpc
-
-  Revision 1.32  1999/08/01 23:09:27  michael
-  * procbase -> cpubase
-
-  Revision 1.31  1999/08/01 23:04:50  michael
-  + Changes for Alpha
-
-  Revision 1.30  1999/07/24 00:13:26  peter
-    * also number units for program
-
-  Revision 1.29  1999/07/23 16:05:33  peter
-    * alignment is now saved in the symtable
-    * C alignment added for records
-    * PPU version increased to solve .12 <-> .13 probs
-
-  Revision 1.28  1999/07/23 12:02:20  peter
-    * fixed crash in previous commit
-
-  Revision 1.27  1999/07/23 11:37:50  peter
-    * error for illegal type reference, instead of 10998
-
-  Revision 1.26  1999/07/22 09:37:58  florian
-    + resourcestring implemented
-    + start of longstring support
-
-  Revision 1.25  1999/07/18 14:47:34  florian
-    * bug 487 fixed, (inc(<property>) isn't allowed)
-    * more fixes to compile with Delphi
-
-  Revision 1.24  1999/07/03 00:30:01  peter
-    * new link writing to the ppu, one .ppu is needed for all link types,
-      static (.o) is now always created also when smartlinking is used
-
-  Revision 1.23  1999/06/28 17:02:44  pierre
-   merged from v0-99-12 branch
-
-  Revision 1.21.2.2  1999/06/28 16:59:55  pierre
-   * fix to get method reference info
-
-  Revision 1.21.2.1  1999/06/22 16:26:46  pierre
-   * local browser stuff corrected
-
-  Revision 1.21  1999/06/08 22:23:50  pierre
-   * staticppusymtable was loaded a tsymtable instead of tunitsymtable
-
-  Revision 1.20  1999/06/02 22:44:23  pierre
-   * previous wrong log corrected
-
-  Revision 1.19  1999/06/02 22:25:53  pierre
-  * changed $ifdef FPC @ into $ifndef TP
-
-  Revision 1.18  1999/06/01 14:45:58  peter
-    * @procvar is now always needed for FPC
-
-  Revision 1.17  1999/05/27 19:45:08  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.16  1999/05/23 18:42:16  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.15  1999/05/17 23:51:41  peter
-    * with temp vars now use a reference with a persistant temp instead
-      of setting datasize
-
-  Revision 1.14  1999/05/14 17:52:29  peter
-    * new deref code
-
-  Revision 1.13  1999/05/13 21:59:48  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.12  1999/05/10 22:34:59  pierre
-   * one more unitsym problem fix
-
-  Revision 1.11  1999/05/10 15:02:51  pierre
-  unitsym finally problem fixed
-
-  Revision 1.10  1999/05/09 12:46:26  peter
-    + hint where a duplicate sym is already defined
-
-  Revision 1.9  1999/05/08 19:52:40  peter
-    + MessagePos() which is enhanced Message() function but also gets the
-      position info
-    * Removed comp warnings
-
-  Revision 1.8  1999/05/06 21:38:38  peter
-    * don't register errordef
-
-  Revision 1.7  1999/05/06 09:05:31  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.6  1999/05/05 09:19:16  florian
-    * more fixes to get it with delphi running
-
-  Revision 1.5  1999/05/01 13:24:43  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.4  1999/04/29 17:25:37  peter
-    * small fix for deref
-
-  Revision 1.3  1999/04/26 18:30:03  peter
-    * farpointerdef moved into pointerdef.is_far
-
-  Revision 1.151  1999/04/26 13:31:54  peter
-    * release storenumber,double_checksum
-
-  Revision 1.150  1999/04/25 17:36:13  peter
-    * typo fix for storenumber
-
-  Revision 1.149  1999/04/21 22:05:28  pierre
-    + tsymtable.find_at_offset function
-      used by ra386att to give arg name from ebp offset with -vz option
-
-  Revision 1.148  1999/04/21 16:31:44  pierre
-  ra386att.pas : commit problem !
-
-  Revision 1.147  1999/04/21 09:43:57  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.146  1999/04/19 09:33:14  pierre
-    + added tsymtable.set_alignment(longint) function
-      to change the offsets of all function args
-      if declared as cdecl or stdcall
-      (this must be done after because the cdecl is parsed after
-      insertion of the function parameterss into parast symboltable)
-
-  Revision 1.145  1999/04/17 13:16:24  peter
-    * fixes for storenumber
-
-  Revision 1.144  1999/04/15 10:01:45  peter
-    * small update for storenumber
-
-  Revision 1.143  1999/04/14 09:15:04  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.142  1999/04/08 14:54:10  pierre
-   * suppression of val para unused warnings
-
-  Revision 1.141  1999/04/07 15:31:09  pierre
-    * all formaldefs are now a sinlge definition
-      cformaldef (this was necessary for double_checksum)
-    + small part of double_checksum code
-
-  Revision 1.140  1999/03/31 13:55:24  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.139  1999/03/24 23:17:30  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.138  1999/03/21 22:49:11  florian
-    * private ids of objects can be reused in child classes
-      if they are in another unit
-
-  Revision 1.137  1999/03/17 22:23:20  florian
-    * a FPC compiled compiler checks now also in debug mode in assigned
-      if a pointer points to the heap
-    * when a symtable is loaded, there is no need to check for duplicate
-      symbols. This leads to crashes because defowner isn't assigned
-      in this case
-
-  Revision 1.136  1999/03/01 13:45:07  pierre
-   + added staticppusymtable symtable type for local browsing
-
-  Revision 1.135  1999/02/23 18:29:28  pierre
-    * win32 compilation error fix
-    + some work for local browser (not cl=omplete yet)
-
-  Revision 1.134  1999/02/22 15:09:42  florian
-    * behaviaor of PROTECTED and PRIVATE fixed, works now like TP/Delphi
-
-  Revision 1.133  1999/02/22 13:07:12  pierre
-    + -b and -bl options work !
-    + cs_local_browser ($L+) is disabled if cs_browser ($Y+)
-      is not enabled when quitting global section
-    * local vars and procedures are not yet stored into PPU
-
-  Revision 1.132  1999/02/22 02:15:40  peter
-    * updates for ag386bin
-
-  Revision 1.131  1999/02/16 00:44:34  peter
-    * tp7 fix, assigned() can only be used on vars, not on functions
-
-  Revision 1.130  1999/02/15 13:13:16  pierre
-   * fix for bug0216
-
-  Revision 1.129  1999/02/11 09:46:29  pierre
-    * fix for normal method calls inside static methods :
-      WARNING there were both parser and codegen errors !!
-      added static_call boolean to calln tree
-
-  Revision 1.128  1999/02/09 23:03:05  florian
-    * check for duplicate field names in inherited classes/objects
-    * bug with self from the mailing list solved (the problem
-      was that classes were sometimes pushed wrong)
-
-  Revision 1.127  1999/02/08 11:29:06  pierre
-   * fix for bug0214
-     several problems where combined
-     search_class_member did not set srsymtable
-     => in do_member_read the call node got a wrong symtable
-     in cg386cal the vmt was pushed twice without chacking if it exists
-     now %esi is set to zero and pushed if not vmt
-     (not very efficient but should work !)
-
-  Revision 1.126  1999/02/05 08:54:31  pierre
-    + linkofiles splitted inot linkofiles and linkunitfiles
-      because linkofiles must be stored with directory
-      to enabled linking of different objects with same name
-      in a different directory
-
-  Revision 1.125  1999/02/03 09:44:33  pierre
-    * symbol nubering begins with 1 in number_symbols
-    * program tmodule has globalsymtable for its staticsymtable
-      (to get it displayed in IDE globals list)
-    + list of symbol (browcol) greatly improved for IDE
-
-  Revision 1.124  1999/01/27 12:58:33  pierre
-   * unused var warning suppressed for high of open arrays
-
-  Revision 1.123  1999/01/21 16:41:03  pierre
-   * fix for constructor inside with statements
-
-  Revision 1.122  1999/01/20 10:16:44  peter
-    * don't update crc when writing objs,libs and sources
-
-  Revision 1.121  1999/01/14 21:50:00  peter
-    * fixed forwardpointer problem with multiple forwards for the same
-      typesym. It now uses a linkedlist instead of a single pointer
-
-  Revision 1.120  1999/01/13 14:29:22  daniel
-  * nonextfield repaired
-
-  Revision 1.119  1999/01/12 14:25:38  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.118  1999/01/05 08:20:10  florian
-    * mainly problem with invalid case ranges fixed (reported by Jonas)
-
-  Revision 1.117  1998/12/30 22:15:57  peter
-    + farpointer type
-    * absolutesym now also stores if its far
-
-  Revision 1.116  1998/12/30 13:41:16  peter
-    * released valuepara
-
-  Revision 1.115  1998/12/11 00:03:48  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.114  1998/12/10 09:47:29  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.113  1998/12/08 10:18:17  peter
-    + -gh for heaptrc unit
-
-  Revision 1.112  1998/12/04 10:18:10  florian
-    * some stuff for procedures of object added
-    * bug with overridden virtual constructors fixed (reported by Italo Gomes)
-
-  Revision 1.111  1998/11/30 16:34:46  pierre
-    * corrected problems with rangecheck
-    + added needed code for no rangecheck  in CRC32 functions in ppu unit
-    * enumdef lso need its rangenr reset to zero
-      when calling reset_global_defs
-
-  Revision 1.110  1998/11/28 16:20:58  peter
-    + support for dll variables
-
-  Revision 1.109  1998/11/27 14:50:49  peter
-    + open strings, $P switch support
-
-  Revision 1.108  1998/11/24 23:00:32  peter
-    * small crash prevention
-
-  Revision 1.107  1998/11/20 15:36:01  florian
-    * problems with rtti fixed, hope it works
-
-  Revision 1.106  1998/11/18 15:44:20  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.105  1998/11/17 10:39:18  peter
-    * has_rtti,has_inittable reset
-
-  Revision 1.104  1998/11/16 10:13:52  peter
-    * label defines are checked at the end of the proc
-
-  Revision 1.103  1998/11/13 15:40:32  pierre
-    + added -Se in Makefile cvstest target
-    + lexlevel cleanup
-      normal_function_level main_program_level and unit_init_level defined
-    * tins_cache grown to A_EMMS (gave range check error in asm readers)
-      (test added in code !)
-    * -Un option was wrong
-    * _FAIL and _SELF only keyword inside
-      constructors and methods respectively
-
-  Revision 1.102  1998/11/12 16:43:34  florian
-    * functions with ansi strings as result didn't work, solved
-
-  Revision 1.101  1998/11/12 12:55:18  pierre
-   * fix for bug0176 and bug0177
-
-  Revision 1.100  1998/11/10 10:09:15  peter
-    * va_list -> array of const
-
-  Revision 1.99  1998/11/09 11:44:38  peter
-    + va_list for printf support
-
-  Revision 1.98  1998/11/05 23:33:35  peter
-    * symtable.done sets vars to nil
-
-  Revision 1.97  1998/11/05 12:03:00  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.96  1998/10/28 18:26:19  pierre
-   * removed some erros after other errors (introduced by useexcept)
-   * stabs works again correctly (for how long !)
-
-  Revision 1.95  1998/10/21 08:40:01  florian
-    + ansistring operator +
-    + $h and string[n] for n>255 added
-    * small problem with TP fixed
-
-  Revision 1.94  1998/10/20 08:07:03  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.93  1998/10/19 08:55:08  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.92  1998/10/16 13:12:56  pierre
-    * added vmt_offsets in destructors code also !!!
-    * vmt_offset code for m68k
-
-  Revision 1.91  1998/10/16 08:48:38  peter
-    * fixed some misplaced $endif GDB
-
-  Revision 1.90  1998/10/15 15:13:32  pierre
-    + added oo_hasconstructor and oo_hasdestructor
-      for objects options
-
-  Revision 1.89  1998/10/14 13:38:25  peter
-    * fixed path with staticlib/objects in ppufiles
-
-  Revision 1.88  1998/10/09 16:36:07  pierre
-    * some memory leaks specific to usebrowser define fixed
-    * removed tmodule.implsymtable (was like tmodule.localsymtable)
-
-  Revision 1.87  1998/10/09 11:47:57  pierre
-    * still more memory leaks fixes !!
-
-  Revision 1.86  1998/10/08 17:17:35  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.85  1998/10/08 13:48:51  peter
-    * fixed memory leaks for do nothing source
-    * fixed unit interdependency
-
-  Revision 1.84  1998/10/06 17:16:58  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.83  1998/09/26 17:45:45  peter
-    + idtoken and only one token table
-
-  Revision 1.82  1998/09/25 09:52:57  peter
-    + store also datasize and # of symbols in ppu
-    * # of defs is now also stored in structs
-
-  Revision 1.81  1998/09/24 23:49:21  peter
-    + aktmodeswitches
-
-  Revision 1.80  1998/09/23 12:20:51  pierre
-    * main program tmodule had no symtable (crashed browser)
-    * unit symbols problem fixed !!
-
-  Revision 1.79  1998/09/23 12:03:57  peter
-    * overloading fix for array of const
-
-  Revision 1.78  1998/09/22 17:13:54  pierre
-    + browsing updated and developed
-      records and objects fields are also stored
-
-  Revision 1.77  1998/09/22 15:37:24  peter
-    + array of const start
-
-  Revision 1.76  1998/09/21 10:00:08  peter
-    * store number of defs in ppu file
-
-  Revision 1.75  1998/09/21 08:58:31  peter
-    + speedsearch, which also needs speedvalue as parameter
-
-  Revision 1.74  1998/09/21 08:45:25  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.73  1998/09/20 09:38:47  florian
-    * hasharray for defs fixed
-    * ansistring code generation corrected (init/final, assignement)
-
-  Revision 1.72  1998/09/19 22:56:18  florian
-    + hash table for getdefnr added
-
-  Revision 1.71  1998/09/18 08:01:40  pierre
-    + improvement on the usebrowser part
-      (does not work correctly for now)
-
-  Revision 1.70  1998/09/09 11:50:57  pierre
-    * forward def are not put in record or objects
-    + added check for forwards also in record and objects
-    * dummy parasymtable for unit initialization removed from
-    symtable stack
-
-  Revision 1.69  1998/09/07 23:10:25  florian
-    * a lot of stuff fixed regarding rtti and publishing of properties,
-      basics should now work
-
-  Revision 1.68  1998/09/07 19:33:26  florian
-    + some stuff for property rtti added:
-       - NameIndex of the TPropInfo record is now written correctly
-       - the DEFAULT/NODEFAULT keyword is supported now
-       - the default value and the storedsym/def are now written to
-         the PPU fiel
-
-  Revision 1.67  1998/09/07 18:46:14  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.66  1998/09/07 17:37:05  florian
-    * first fixes for published properties
-
-  Revision 1.65  1998/09/06 22:42:03  florian
-    + rtti genreation for properties added
-
-  Revision 1.64  1998/09/05 22:11:04  florian
-    + switch -vb
-    * while/repeat loops accept now also word/longbool conditions
-    * makebooltojump did an invalid ungetregister32, fixed
-
-  Revision 1.63  1998/09/04 17:34:23  pierre
-    * bug with datalabel corrected
-    + assembler errors better commented
-    * one nested record crash removed
-
-  Revision 1.62  1998/09/04 08:42:10  peter
-    * updated some error messages
-
-  Revision 1.61  1998/09/03 16:03:21  florian
-    + rtti generation
-    * init table generation changed
-
-  Revision 1.60  1998/09/01 17:39:52  peter
-    + internal constant functions
-
-  Revision 1.59  1998/09/01 12:53:27  peter
-    + aktpackenum
-
-  Revision 1.58  1998/09/01 07:54:26  pierre
-    * UseBrowser a little updated (might still be buggy !!)
-    * bug in psub.pas in function specifier removed
-    * stdcall allowed in interface and in implementation
-      (FPC will not yet complain if it is missing in either part
-      because stdcall is only a dummy !!)
-
-  Revision 1.57  1998/08/31 12:26:33  peter
-    * m68k and palmos updates from surebugfixes
-
-  Revision 1.56  1998/08/21 14:08:55  pierre
-    + TEST_FUNCRET now default (old code removed)
-      works also for m68k (at least compiles)
-
-  Revision 1.55  1998/08/21 08:43:32  pierre
-    * pocdecl and poclearstack are now different
-      external must but written as last specification
-
-  Revision 1.54  1998/08/20 09:26:48  pierre
-    + funcret setting in underproc testing
-      compile with _dTEST_FUNCRET
-
-  Revision 1.53  1998/08/19 18:04:56  peter
-    * fixed current_module^.in_implementation flag
-
-  Revision 1.51  1998/08/18 14:17:12  pierre
-    * bug about assigning the return value of a function to
-      a procvar fixed : warning
-      assigning a proc to a procvar need @ in FPC mode !!
-    * missing file/line info restored
-
-  Revision 1.50  1998/08/17 10:10:13  peter
-    - removed OLDPPU
-
-  Revision 1.49  1998/08/12 19:39:31  peter
-    * fixed some crashes
-
-  Revision 1.48  1998/08/10 14:50:32  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.47  1998/08/10 10:00:19  peter
-    * Moved symbolstream to symtable.pas
-
-  Revision 1.46  1998/08/08 10:19:19  florian
-    * small fixes to write the extended type correct
-
-  Revision 1.45  1998/08/02 16:42:00  florian
-    * on o : tobject do should also work now, the exceptsymtable shouldn't be
-      disposed by dellexlevel
-
-  Revision 1.44  1998/07/30 11:18:21  florian
-    + first implementation of try ... except on .. do end;
-    * limitiation of 65535 bytes parameters for cdecl removed
-
-  Revision 1.43  1998/07/28 21:52:56  florian
-    + implementation of raise and try..finally
-    + some misc. exception stuff
-
-  Revision 1.42  1998/07/20 10:23:03  florian
-    * better ansi string assignement
-
-  Revision 1.41  1998/07/18 22:54:31  florian
-    * some ansi/wide/longstring support fixed:
-       o parameter passing
-       o returning as result from functions
-
-  Revision 1.40  1998/07/14 14:47:09  peter
-    * released NEWINPUT
-
-  Revision 1.39  1998/07/10 00:00:06  peter
-    * fixed ttypesym bug finally
-    * fileinfo in the symtable and better using for unused vars
-
-  Revision 1.38  1998/07/07 11:20:17  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.37  1998/06/24 14:48:42  peter
-    * ifdef newppu -> ifndef oldppu
-
-  Revision 1.36  1998/06/17 14:10:19  peter
-    * small os2 fixes
-    * fixed interdependent units with newppu (remake3 under linux works now)
-
-  Revision 1.35  1998/06/16 08:56:35  peter
-    + targetcpu
-    * cleaner pmodules for newppu
-
-  Revision 1.34  1998/06/15 15:38:12  pierre
-    * small bug in systems.pas corrected
-    + operators in different units better hanlded
-
-  Revision 1.33  1998/06/15 14:10:53  daniel
-  * File was ruined, fixed.
-
-  Revision 1.31  1998/06/13 00:10:20  peter
-    * working browser and newppu
-    * some small fixes against crashes which occured in bp7 (but not in
-      fpc?!)
-
-  Revision 1.30  1998/06/09 16:01:53  pierre
-    + added procedure directive parsing for procvars
-      (accepted are popstack cdecl and pascal)
-    + added C vars with the following syntax
-      var C calias 'true_c_name';(can be followed by external)
-      reason is that you must add the Cprefix
-
-      which is target dependent
-
-  Revision 1.29  1998/06/07 15:30:26  florian
-    + first working rtti
-    + data init/final. for local variables
-
-  Revision 1.28  1998/06/06 09:27:39  peter
-    * new depend file generated
-
-  Revision 1.27  1998/06/05 14:37:38  pierre
-    * fixes for inline for operators
-    * inline procedure more correctly restricted
-
-  Revision 1.26  1998/06/04 23:52:03  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.25  1998/06/04 09:55:48  pierre
-    * demangled name of procsym reworked to become independant of the
-      mangling scheme
-
-  Revision 1.24  1998/06/03 22:49:04  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.23  1998/05/28 14:40:30  peter
-    * fixes for newppu, remake3 works now with it
-
-  Revision 1.22  1998/05/27 19:45:09  peter
-    * symtable.pas splitted into includefiles
-    * symtable adapted for $ifndef OLDPPU
-
-  Revision 1.21  1998/05/23 01:21:31  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.20  1998/05/21 19:33:37  peter
-    + better procedure directive handling and only one table
-
-  Revision 1.19  1998/05/20 09:42:37  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.18  1998/05/11 13:07:57  peter
-    + $ifndef OLDPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.17  1998/05/06 08:38:48  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.16  1998/05/05 15:24:20  michael
-  * Fix to save units with classes.
-
-  Revision 1.15  1998/05/04 17:54:29  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.14  1998/05/01 16:38:46  florian
-    * handling of private and protected fixed
-    + change_keywords_to_tp implemented to remove
-      keywords which aren't supported by tp
-    * break and continue are now symbols of the system unit
-    + widestring, longstring and ansistring type released
-
-  Revision 1.13  1998/05/01 09:01:25  florian
-    + correct semantics of private and protected
-    * small fix in variable scope:
-       a id can be used in a parameter list of a method, even it is used in
-       an anchestor class as field id
-
-  Revision 1.12  1998/05/01 07:43:57  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.11  1998/04/30 15:59:42  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.10  1998/04/29 10:34:05  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.9  1998/04/27 23:10:29  peter
-    + new scanner
-    * $makelib -> if smartlink
-    * small filename fixes pmodule.setfilename
-    * moved import from files.pas -> import.pas
-
-  Revision 1.8  1998/04/21 10:16:48  peter
-    * patches from strasbourg
-    * objects is not used anymore in the fpc compiled version
-
-  Revision 1.7  1998/04/13 22:20:36  florian
-    + stricter checking for duplicate id, solves also bug0097
-
-  Revision 1.6  1998/04/13 17:20:43  florian
-    * tdef.done much faster implemented
-
-  Revision 1.5  1998/04/10 21:36:56  florian
-    + some stuff to support method pointers (procedure of object) added
-      (declaration, parameter handling)
-
-  Revision 1.4  1998/04/08 16:58:08  pierre
-    * several bugfixes
-      ADD ADC and AND are also sign extended
-      nasm output OK (program still crashes at end
-      and creates wrong assembler files !!)
-      procsym types sym in tdef removed !!
-
-  Revision 1.3  1998/04/07 13:19:52  pierre
-    * bugfixes for reset_gdb_info
-      in MEM parsing for go32v2
-      better external symbol creation
-      support for rhgdb.exe (lowercase file names)
-
-  Revision 1.2  1998/04/06 13:09:04  daniel
-  * Emergency solution for bug in reset_gdb_info.
 }
 }

+ 4 - 319
compiler/systems.pas

@@ -1509,7 +1509,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.96  1999-11-03 23:43:45  peter
+  Revision 1.97  1999-11-06 14:34:28  peter
+    * truncated log to 20 revs
+
+  Revision 1.96  1999/11/03 23:43:45  peter
     * fixed ar commands
     * fixed ar commands
 
 
   Revision 1.95  1999/10/21 14:29:37  peter
   Revision 1.95  1999/10/21 14:29:37  peter
@@ -1579,322 +1582,4 @@ end.
   Revision 1.79  1999/06/02 13:25:34  hajny
   Revision 1.79  1999/06/02 13:25:34  hajny
     * fixed stripping symbols for OS/2
     * fixed stripping symbols for OS/2
 
 
-  Revision 1.78  1999/05/31 20:34:00  peter
-    * changed heapsize to 256k
-
-  Revision 1.77  1999/05/27 19:45:10  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.76  1999/05/18 09:30:10  michael
-  + changes by thomas hajt
-
-  Revision 1.74  1999/05/17 13:02:12  pierre
-   * -Csmmm works for win32 but default is set to 32Mb
-
-  Revision 1.73  1999/05/11 00:44:06  peter
-    * released pecoff for win32 as default
-
-  Revision 1.72  1999/05/05 22:22:05  peter
-    * updated messages
-
-  Revision 1.71  1999/05/05 17:34:33  peter
-    * output is more like as 2.9.1
-    * stabs really working for go32v2
-
-  Revision 1.70  1999/05/05 09:19:18  florian
-    * more fixes to get it with delphi running
-
-  Revision 1.69  1999/05/03 18:03:29  peter
-    * no ar.exe running field in target_asm
-
-  Revision 1.68  1999/05/02 22:41:59  peter
-    * moved section names to systems
-    * fixed nasm,intel writer
-
-  Revision 1.67  1999/05/01 14:18:12  peter
-    * win32 pecoff disabled because it's still not ok
-
-  Revision 1.66  1999/05/01 13:24:44  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.65  1999/03/26 00:05:47  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.64  1999/03/24 23:17:33  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.63  1999/03/09 11:54:09  pierre
-   * pecoff default assem for win32 with ag386bin
-
-  Revision 1.62  1999/03/04 13:55:48  pierre
-    * some m68k fixes (still not compilable !)
-    * new(tobj) does not give warning if tobj has no VMT !
-
-  Revision 1.61  1999/03/03 11:41:51  pierre
-    + stabs info corrected to give results near to GAS output
-    * local labels (with .L are not stored in object anymore)
-      so we get the same number of symbols as from GAS !
-
-  Revision 1.60  1999/02/26 00:48:25  peter
-    * assembler writers fixed for ag386bin
-
-  Revision 1.59  1999/02/25 21:02:53  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.58  1999/02/24 00:59:16  peter
-    * small updates for ag386bin
-
-  Revision 1.57  1999/02/22 02:15:42  peter
-    * updates for ag386bin
-
-  Revision 1.56  1999/01/10 15:38:01  peter
-    * moved some tables from ra386*.pas -> i386.pas
-    + start of coff writer
-    * renamed asmutils unit to rautils
-
-  Revision 1.55  1999/01/06 22:58:47  florian
-    + some stuff for the new code generator
-
-  Revision 1.54  1998/12/28 23:26:26  peter
-    + resource file handling ($R directive) for Win32
-
-  Revision 1.53  1998/12/15 10:23:30  peter
-    + -iSO, -iSP, -iTO, -iTP
-
-  Revision 1.52  1998/12/03 10:17:32  peter
-    * target_os.use_bound_instruction boolean
-
-  Revision 1.51  1998/11/30 09:43:23  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.50  1998/11/16 15:41:45  peter
-    * tp7 didn't like my ifopt H+ :(
-
-  Revision 1.49  1998/11/16 10:17:09  peter
-    * fixed for H+ compilation
-
-  Revision 1.48  1998/10/26 14:19:30  pierre
-    + added options -lS and -lT for source and target os output
-      (to have a easier way to test OS_SOURCE abd OS_TARGET in makefiles)
-    * several problems with rtti data
-      (type of sym was not checked)
-      assumed to be varsym when they could be procsym or property syms !!
-
-  Revision 1.47  1998/10/20 08:07:04  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.46  1998/10/16 08:51:54  peter
-    + target_os.stackalignment
-    + stack can be aligned at 2 or 4 byte boundaries
-
-  Revision 1.45  1998/10/15 16:20:41  peter
-    * removed uses verbose which is not possible! this unit may not use
-      any other unit !
-
-  Revision 1.44  1998/10/14 11:28:25  florian
-    * emitpushreferenceaddress gets now the asmlist as parameter
-    * m68k version compiles with -duseansistrings
-
-  Revision 1.43  1998/10/14 08:08:56  pierre
-    * following Peters remark, removed all ifdef in
-      the systems unit enums
-    * last bugs of cg68k removed for sysamiga
-      (sysamiga assembles with as68k !!)
-
-  Revision 1.42  1998/10/13 16:50:23  pierre
-    * undid some changes of Peter that made the compiler wrong
-      for m68k (I had to reinsert some ifdefs)
-    * removed several memory leaks under m68k
-    * removed the meory leaks for assembler readers
-    * cross compiling shoud work again better
-      ( crosscompiling sysamiga works
-       but as68k still complain about some code !)
-
-  Revision 1.41  1998/10/13 13:10:31  peter
-    * new style for m68k/i386 infos and enums
-
-  Revision 1.40  1998/10/13 09:13:09  pierre
-   * assembler type output command line was case sensitive
-
-  Revision 1.39  1998/10/13 08:19:42  pierre
-    + source_os is now set correctly for cross-processor compilers
-      (tos contains all target_infos and
-       we use CPU86 and CPU68 conditionals to
-       get the source operating system
-       this only works if you do not undefine
-       the source target  !!)
-    * several cg68k memory leaks fixed
-    + started to change the code so that it should be possible to have
-      a complete compiler (both for m68k and i386 !!)
-
-  Revision 1.38  1998/10/07 04:26:58  carl
-    * bugfixes
-    + added mpw support
-
-  Revision 1.37  1998/10/06 20:40:58  peter
-    * remove -D from assemblers
-
-  Revision 1.36  1998/09/16 16:41:50  peter
-    * merged fixes
-
-  Revision 1.33.2.3  1998/09/16 16:13:13  peter
-    * win32 .o -> .ow and .a -> .aw
-
-  Revision 1.35  1998/09/11 17:35:33  peter
-    * fixed tabs
-
-  Revision 1.34  1998/09/11 12:27:55  pierre
-    * restored m68k part
-
-  Revision 1.33.2.2  1998/09/11 17:29:20  peter
-    * fixed tabs
-
-  Revision 1.33.2.1  1998/09/11 12:06:00  pierre
-    * m68k part restored
-
-  Revision 1.33  1998/09/10 15:25:39  daniel
-  + Added maxheapsize.
-  * Corrected semi-bug in calling the assembler and the linker
-
-  Revision 1.31  1998/09/01 09:07:13  peter
-    * m68k fixes, splitted cg68k like cgi386
-
-  Revision 1.30  1998/08/31 12:26:34  peter
-    * m68k and palmos updates from surebugfixes
-
-  Revision 1.29  1998/08/26 10:09:21  peter
-    * more lowercase extensions
-
-  Revision 1.28  1998/08/25 12:42:47  pierre
-    * CDECL changed to CVAR for variables
-      specifications are read in structures also
-    + started adding GPC compatibility mode ( option  -Sp)
-    * names changed to lowercase
-
-  Revision 1.27  1998/08/21 15:16:57  peter
-    * win32 compiles a bit better, no growheap crash
-
-  Revision 1.26  1998/08/19 16:07:55  jonas
-    * changed optimizer switches + cleanup of DestroyRefs in daopt386.pas
-
-  Revision 1.25  1998/08/18 09:24:45  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.24  1998/08/17 09:17:54  peter
-    * static/shared linking updates
-
-  Revision 1.23  1998/06/25 08:48:20  florian
-    * first version of rtti support
-
-  Revision 1.22  1998/06/17 14:10:21  peter
-    * small os2 fixes
-    * fixed interdependent units with newppu (remake3 under linux works now)
-
-  Revision 1.20  1998/06/15 15:38:14  pierre
-    * small bug in systems.pas corrected
-    + operators in different units better hanlded
-
-  Revision 1.19  1998/06/15 13:34:24  daniel
-
-
-  * Fixed spelling mistakes in comments.
-  * Fixed some OS/2 parameters.
-
-  Revision 1.18  1998/06/08 22:59:54  peter
-    * smartlinking works for win32
-    * some defines to exclude some compiler parts
-
-  Revision 1.17  1998/06/04 23:52:04  peter
-    * m68k compiles
-    + .def file creation moved to gendef.pas so it could also be used
-      for win32
-
-  Revision 1.16  1998/06/01 16:50:22  peter
-    + boolean -> ord conversion
-    * fixed ord -> boolean conversion
-
-  Revision 1.15  1998/05/30 14:31:11  peter
-    + $ASMMODE
-
-  Revision 1.14  1998/05/29 13:24:45  peter
-    + asw assembler
-
-  Revision 1.13  1998/05/27 00:20:33  peter
-    * some scanner optimizes
-    * automaticly aout2exe for go32v1
-    * fixed dynamiclinker option which was added at the wrong place
-
-  Revision 1.12  1998/05/23 01:21:32  peter
-        + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.11  1998/05/22 12:32:49  peter
-    * fixed -L on the commandline, Dos commandline is only 128 bytes
-
-  Revision 1.10  1998/05/11 13:07:58  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.9  1998/05/06 08:38:49  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.8  1998/05/04 20:19:54  peter
-    * small fix for go32v2
-
-  Revision 1.7  1998/05/04 17:54:29  peter
-    + smartlinking works (only case jumptable left todo)
-    * redesign of systems.pas to support assemblers and linkers
-    + Unitname is now also in the PPU-file, increased version to 14
-
-  Revision 1.6  1998/05/01 07:43:57  florian
-    + basics for rtti implemented
-    + switch $m (generate rtti for published sections)
-
-  Revision 1.5  1998/04/29 10:34:06  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.4  1998/04/27 15:45:20  peter
-    + -Xl for smartlink
-        + target_info.arext = .a
-
-  Revision 1.3  1998/04/16 10:50:45  daniel
-  * Fixed some things that were broken for OS/2.
 }
 }

+ 4 - 147
compiler/tcadd.pas

@@ -1136,7 +1136,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.50  1999-09-27 23:45:00  peter
+  Revision 1.51  1999-11-06 14:34:29  peter
+    * truncated log to 20 revs
+
+  Revision 1.50  1999/09/27 23:45:00  peter
     * procinfo is now a pointer
     * procinfo is now a pointer
     * support for result setting in sub procedure
     * support for result setting in sub procedure
 
 
@@ -1207,150 +1210,4 @@ end.
     * some fixes for qword
     * some fixes for qword
     * start of register calling conventions
     * start of register calling conventions
 
 
-  Revision 1.33  1999/05/27 19:45:12  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.32  1999/05/23 18:42:18  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.31  1999/05/19 20:40:14  florian
-    * fixed a couple of array related bugs:
-      - var a : array[0..1] of char;   p : pchar;  p:=a+123; works now
-      - open arrays with an odd size doesn't work: movsb wasn't generated
-      - introduced some new array type helper routines (is_special_array) etc.
-      - made the array type checking in isconvertable more strict, often
-        open array can be used where is wasn't allowed etc...
-
-  Revision 1.30  1999/05/11 00:47:02  peter
-    + constant operations on enums, only in fpc mode
-
-  Revision 1.29  1999/05/06 09:05:32  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.28  1999/05/01 13:24:46  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.27  1999/04/28 06:02:14  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.26  1999/04/16 20:44:37  florian
-    * the boolean operators =;<>;xor with LOC_JUMP and LOC_FLAGS
-      operands fixed, small things for new ansistring management
-
-  Revision 1.25  1999/04/15 09:01:34  peter
-    * fixed set loading
-    * object inheritance support for browser
-
-  Revision 1.24  1999/04/08 11:34:00  peter
-    * int/int warning removed, only the hint is left
-
-  Revision 1.23  1999/03/02 22:52:19  peter
-    * fixed char array, which can start with all possible values
-
-  Revision 1.22  1999/02/22 02:15:43  peter
-    * updates for ag386bin
-
-  Revision 1.21  1999/01/20 21:05:09  peter
-    * fixed set operations which still had array constructor as type
-
-  Revision 1.20  1999/01/20 17:39:26  jonas
-    + fixed bug0163 (set1 <= set2 support)
-
-  Revision 1.19  1998/12/30 13:35:35  peter
-    * fix for boolean=true compares
-
-  Revision 1.18  1998/12/15 17:12:35  peter
-    * pointer+ord not allowed in tp mode
-
-  Revision 1.17  1998/12/11 00:03:51  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.16  1998/12/10 09:47:31  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.15  1998/11/24 22:59:05  peter
-    * handle array of char the same as strings
-
-  Revision 1.14  1998/11/17 00:36:47  peter
-    * more ansistring fixes
-
-  Revision 1.13  1998/11/16 15:33:05  peter
-    * fixed return for ansistrings
-
-  Revision 1.12  1998/11/05 14:28:16  peter
-    * fixed unknown set operation msg
-
-  Revision 1.11  1998/11/05 12:03:02  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.10  1998/11/04 10:11:46  peter
-    * ansistring fixes
-
-  Revision 1.9  1998/10/25 23:32:04  peter
-    * fixed u32bit - s32bit conversion problems
-
-  Revision 1.8  1998/10/22 12:12:28  pierre
-   + better error info on unimplemented set operators
-
-  Revision 1.7  1998/10/21 15:12:57  pierre
-    * bug fix for IOCHECK inside a procedure with iocheck modifier
-    * removed the GPF for unexistant overloading
-      (firstcall was called with procedinition=nil !)
-    * changed typen to what Florian proposed
-      gentypenode(p : pdef) sets the typenodetype field
-      and resulttype is only set if inside bt_type block !
-
-  Revision 1.6  1998/10/20 15:09:24  florian
-    + binary operators for ansi strings
-
-  Revision 1.5  1998/10/20 08:07:05  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.4  1998/10/14 12:53:39  peter
-    * fixed small tp7 things
-    * boolean:=longbool and longbool fixed
-
-  Revision 1.3  1998/10/11 14:31:19  peter
-    + checks for division by zero
-
-  Revision 1.2  1998/10/05 21:33:31  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.1  1998/09/23 20:42:24  peter
-    * splitted pass_1
-
 }
 }

+ 4 - 199
compiler/tccal.pas

@@ -1221,7 +1221,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.70  1999-10-26 12:30:46  peter
+  Revision 1.71  1999-11-06 14:34:29  peter
+    * truncated log to 20 revs
+
+  Revision 1.70  1999/10/26 12:30:46  peter
     * const parameter is now checked
     * const parameter is now checked
     * better and generic check if a node can be used for assigning
     * better and generic check if a node can be used for assigning
     * export fixes
     * export fixes
@@ -1297,202 +1300,4 @@ end.
   Revision 1.51.2.3  1999/07/01 21:32:01  peter
   Revision 1.51.2.3  1999/07/01 21:32:01  peter
     * procvar fixes again
     * procvar fixes again
 
 
-  Revision 1.51.2.2  1999/06/29 12:12:13  pierre
-   * fix for bug0272
-
-  Revision 1.51.2.1  1999/06/28 00:33:47  pierre
-   * better error position bug0269
-
-  Revision 1.51  1999/06/01 19:27:57  peter
-    * better checks for procvar and methodpointer
-
-  Revision 1.50  1999/06/01 14:46:00  peter
-    * @procvar is now always needed for FPC
-
-  Revision 1.49  1999/05/31 20:34:51  peter
-    * fixed hightree generation when loading highSYM
-
-  Revision 1.48  1999/05/27 19:45:13  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.47  1999/05/23 18:42:19  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.46  1999/05/20 14:58:27  peter
-    * fixed arrayconstruct->set conversion which didn't work for enum sets
-
-  Revision 1.45  1999/05/19 10:31:54  florian
-    * two bugs reported by Romio (bugs 13) are fixed:
-        - empty array constructors are now handled correctly (e.g. for sysutils.format)
-        - comparsion of ansistrings was sometimes coded wrong
-
-  Revision 1.44  1999/05/18 21:58:33  florian
-    * fixed some bugs related to temp. ansistrings and functions results
-      which return records/objects/arrays which need init/final.
-
-  Revision 1.43  1999/05/18 14:15:58  peter
-    * containsself fixes
-    * checktypes()
-
-  Revision 1.42  1999/05/17 23:51:43  peter
-    * with temp vars now use a reference with a persistant temp instead
-      of setting datasize
-
-  Revision 1.41  1999/05/13 21:59:50  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.40  1999/05/10 09:01:45  peter
-    * small message fixes
-
-  Revision 1.39  1999/05/02 09:35:46  florian
-    + method message handlers which contain an explicit self can't be called
-      directly anymore
-    + self is now loaded at the start of the an message handler with an explicit
-      self
-    + $useoverlay fixed: i386 was renamed to i386base
-
-  Revision 1.38  1999/05/01 13:24:47  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.37  1999/04/26 13:31:57  peter
-    * release storenumber,double_checksum
-
-  Revision 1.36  1999/04/26 09:30:46  peter
-    * small tp7 fix
-    * fix void pointer with formaldef
-
-  Revision 1.35  1999/04/21 21:49:18  pierre
-   * previous log corrected
-
-  Revision 1.34  1999/04/21 16:31:46  pierre
-  * checks for untyped var or const args
-    (refuse procsyms as var, types or voiddef as const)
-
-  Revision 1.33  1999/04/21 09:44:00  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.32  1999/04/14 09:11:22  peter
-    * fixed tp proc -> procvar
-
-  Revision 1.31  1999/04/01 21:59:56  peter
-    * type error for array constructor with array,record as argument
-
-  Revision 1.30  1999/03/31 13:55:27  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.29  1999/03/24 23:17:34  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.28  1999/03/23 14:43:03  peter
-    * fixed crash with array of const in procvar
-
-  Revision 1.27  1999/03/19 17:31:54  pierre
-   * lost reference because refcount not increased fixed
-
-  Revision 1.26  1999/03/02 18:24:22  peter
-    * fixed overloading of array of char
-
-  Revision 1.25  1999/02/22 15:09:44  florian
-    * behaviaor of PROTECTED and PRIVATE fixed, works now like TP/Delphi
-
-  Revision 1.24  1999/02/22 02:15:45  peter
-    * updates for ag386bin
-
-  Revision 1.23  1999/02/09 17:15:52  florian
-    * some false warnings "function result doesn't seems to be set" are
-      avoided
-
-  Revision 1.22  1999/01/29 11:34:55  pierre
-   + better info for impossible type conversion in calln
-
-  Revision 1.21  1999/01/21 22:10:49  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.20  1999/01/21 16:41:06  pierre
-   * fix for constructor inside with statements
-
-  Revision 1.19  1999/01/19 14:20:16  peter
-    * fixed [char] crash
-
-  Revision 1.18  1999/01/12 14:25:40  peter
-    + BrowserLog for browser.log generation
-    + BrowserCol for browser info in TCollections
-    * released all other UseBrowser
-
-  Revision 1.17  1998/12/11 00:03:52  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.16  1998/12/10 14:57:52  pierre
-   * fix for operators
-
-  Revision 1.15  1998/12/10 09:47:32  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.14  1998/11/27 14:50:52  peter
-    + open strings, $P switch support
-
-  Revision 1.13  1998/11/24 17:03:51  peter
-    * fixed exactmatch removings
-
-  Revision 1.12  1998/11/16 10:18:10  peter
-    * fixes for ansistrings
-
-  Revision 1.11  1998/11/10 10:09:17  peter
-    * va_list -> array of const
-
-  Revision 1.10  1998/11/09 11:44:41  peter
-    + va_list for printf support
-
-  Revision 1.9  1998/10/28 18:26:22  pierre
-   * removed some erros after other errors (introduced by useexcept)
-   * stabs works again correctly (for how long !)
-
-  Revision 1.8  1998/10/09 16:36:09  pierre
-    * some memory leaks specific to usebrowser define fixed
-    * removed tmodule.implsymtable (was like tmodule.localsymtable)
-
-  Revision 1.7  1998/10/06 20:49:09  peter
-    * m68k compiler compiles again
-
-  Revision 1.6  1998/10/02 09:24:22  peter
-    * more constant expression evaluators
-
-  Revision 1.5  1998/09/28 11:22:17  pierre
-   * did not compile for browser
-   * merge from fixes
-
-  Revision 1.4  1998/09/27 10:16:24  florian
-    * type casts pchar<->ansistring fixed
-    * ansistring[..] calls does now an unique call
-
-  Revision 1.3  1998/09/24 14:27:40  peter
-    * some better support for openarray
-
-  Revision 1.2  1998/09/24 09:02:16  peter
-    * rewritten isconvertable to use case
-    * array of .. and single variable are compatible
-
-  Revision 1.1  1998/09/23 20:42:24  peter
-    * splitted pass_1
-
 }
 }

+ 4 - 123
compiler/tccnv.pas

@@ -967,7 +967,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.51  1999-11-05 13:15:00  florian
+  Revision 1.52  1999-11-06 14:34:29  peter
+    * truncated log to 20 revs
+
+  Revision 1.51  1999/11/05 13:15:00  florian
     * some fixes to get the new cg compiling again
     * some fixes to get the new cg compiling again
 
 
   Revision 1.50  1999/09/27 23:45:00  peter
   Revision 1.50  1999/09/27 23:45:00  peter
@@ -1043,126 +1046,4 @@ end.
   * changed $ifdef FPC @ into $ifndef TP
   * changed $ifdef FPC @ into $ifndef TP
   + debug note about longint to pointer conversion
   + debug note about longint to pointer conversion
 
 
-  Revision 1.33  1999/05/27 19:45:15  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.32  1999/05/20 14:58:28  peter
-    * fixed arrayconstruct->set conversion which didn't work for enum sets
-
-  Revision 1.31  1999/05/13 21:59:52  peter
-    * removed oldppu code
-    * warning if objpas is loaded from uses
-    * first things for new deref writing
-
-  Revision 1.30  1999/05/12 00:20:00  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.29  1999/05/09 11:37:05  peter
-    * fixed order of arguments for incompatible types message
-
-  Revision 1.28  1999/05/06 09:05:34  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.27  1999/05/01 13:24:48  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.26  1999/04/26 13:31:58  peter
-    * release storenumber,double_checksum
-
-  Revision 1.25  1999/04/22 10:49:09  peter
-    * fixed pchar to string location
-
-  Revision 1.24  1999/04/21 09:44:01  peter
-    * storenumber works
-    * fixed some typos in double_checksum
-    + incompatible types type1 and type2 message (with storenumber)
-
-  Revision 1.23  1999/04/15 08:56:24  peter
-    * fixed bool-bool conversion
-
-  Revision 1.22  1999/04/08 09:47:31  pierre
-   * warn if uninitilized local vars are used in IS or AS statements
-
-  Revision 1.21  1999/03/06 17:25:20  peter
-    * moved comp<->real warning so it doesn't occure everytime that
-      isconvertable is called with
-
-  Revision 1.20  1999/03/02 18:24:23  peter
-    * fixed overloading of array of char
-
-  Revision 1.19  1999/02/22 02:15:46  peter
-    * updates for ag386bin
-
-  Revision 1.18  1999/01/27 14:56:57  pierre
-  * typo error corrected solves bug0190 and bug0204
-
-  Revision 1.17  1999/01/27 14:15:25  pierre
-   * bug0209 corrected (introduce while solving other bool to int related bugs)
-
-  Revision 1.16  1999/01/27 13:02:21  pierre
-   boolean to int conversion problems bug0205 bug0208
-
-  Revision 1.15  1999/01/27 00:13:57  florian
-    * "procedure of object"-stuff fixed
-
-  Revision 1.14  1999/01/19 12:17:45  peter
-    * removed rangecheck warning which was shown twice
-
-  Revision 1.13  1998/12/30 22:13:47  peter
-    * if explicit cnv then also handle the ordinal consts direct
-
-  Revision 1.12  1998/12/11 00:03:53  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.11  1998/12/04 10:18:12  florian
-    * some stuff for procedures of object added
-    * bug with overridden virtual constructors fixed (reported by Italo Gomes)
-
-  Revision 1.10  1998/11/29 12:40:24  peter
-    * newcnv -> not oldcnv
-
-  Revision 1.9  1998/11/26 13:10:43  peter
-    * new int - int conversion -dNEWCNV
-    * some function renamings
-
-  Revision 1.8  1998/11/05 12:03:03  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.7  1998/10/23 11:58:27  florian
-    * better code generation for s:=s+[b] if b is in the range of
-      a small set and s is also a small set
-
-  Revision 1.6  1998/10/21 15:12:58  pierre
-    * bug fix for IOCHECK inside a procedure with iocheck modifier
-    * removed the GPF for unexistant overloading
-      (firstcall was called with procedinition=nil !)
-    * changed typen to what Florian proposed
-      gentypenode(p : pdef) sets the typenodetype field
-      and resulttype is only set if inside bt_type block !
-
-  Revision 1.5  1998/10/07 10:38:55  peter
-    * forgot a firstpass in arrayconstruct2set
-
-  Revision 1.4  1998/10/05 21:33:32  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.3  1998/09/27 10:16:26  florian
-    * type casts pchar<->ansistring fixed
-    * ansistring[..] calls does now an unique call
-
-  Revision 1.2  1998/09/24 23:49:22  peter
-    + aktmodeswitches
-
-  Revision 1.1  1998/09/23 20:42:24  peter
-    * splitted pass_1
-
 }
 }

+ 5 - 13
compiler/tcflw.pas

@@ -338,7 +338,7 @@ implementation
                 begin
                 begin
                   pt:=genzeronode(funcretn);
                   pt:=genzeronode(funcretn);
                   pt^.retdef:=p^.resulttype;
                   pt^.retdef:=p^.resulttype;
-                  pt^.funcretprocinfo:=procinfo; 
+                  pt^.funcretprocinfo:=procinfo;
                   p^.left:=gennode(assignn,pt,p^.left);
                   p^.left:=gennode(assignn,pt,p^.left);
                   firstpass(p^.left);
                   firstpass(p^.left);
                 end;
                 end;
@@ -507,7 +507,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.23  1999-10-05 22:01:53  pierre
+  Revision 1.24  1999-11-06 14:34:30  peter
+    * truncated log to 20 revs
+
+  Revision 1.23  1999/10/05 22:01:53  pierre
    * bug exit('test') + fail for classes
    * bug exit('test') + fail for classes
 
 
   Revision 1.22  1999/10/04 20:27:41  peter
   Revision 1.22  1999/10/04 20:27:41  peter
@@ -580,15 +583,4 @@ end.
   Revision 1.4  1998/12/11 00:03:55  peter
   Revision 1.4  1998/12/11 00:03:55  peter
     + globtype,tokens,version unit splitted from globals
     + globtype,tokens,version unit splitted from globals
 
 
-  Revision 1.3  1998/10/19 08:55:10  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.2  1998/10/06 20:49:10  peter
-    * m68k compiler compiles again
-
-  Revision 1.1  1998/09/23 20:42:24  peter
-    * splitted pass_1
-
 }
 }

+ 4 - 154
compiler/tcinl.pas

@@ -1269,7 +1269,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.57  1999-10-29 15:28:51  peter
+  Revision 1.58  1999-11-06 14:34:30  peter
+    * truncated log to 20 revs
+
+  Revision 1.57  1999/10/29 15:28:51  peter
     * fixed assert, the tree is now disposed in firstpass if assertions
     * fixed assert, the tree is now disposed in firstpass if assertions
       are off.
       are off.
 
 
@@ -1353,157 +1356,4 @@ end.
     * int64/qword type release
     * int64/qword type release
     + lo/hi for int64/qword
     + lo/hi for int64/qword
 
 
-  Revision 1.37  1999/06/25 10:02:56  florian
-    * bug 459 fixed
-
-  Revision 1.36  1999/06/15 18:58:36  peter
-    * merged
-
-  Revision 1.35.2.2  1999/07/05 20:06:46  peter
-    * give error instead of warning for ln(0) and sqrt(0)
-
-  Revision 1.35.2.1  1999/06/15 18:54:54  peter
-    * more procvar fixes
-
-  Revision 1.35  1999/05/27 19:45:19  peter
-    * removed oldasm
-    * plabel -> pasmlabel
-    * -a switches to source writing automaticly
-    * assembler readers OOPed
-    * asmsymbol automaticly external
-    * jumptables and other label fixes for asm readers
-
-  Revision 1.34  1999/05/23 18:42:20  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.33  1999/05/06 09:05:35  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.32  1999/05/05 22:25:21  florian
-    * fixed register allocation for val
-
-  Revision 1.31  1999/05/02 21:33:57  florian
-    * several bugs regarding -Or fixed
-
-  Revision 1.30  1999/05/01 13:24:53  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.29  1999/04/28 06:02:15  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.28  1999/04/26 18:28:12  peter
-    * better read/write array
-
-  Revision 1.27  1999/04/26 09:32:22  peter
-    * try to convert to string for val()
-
-  Revision 1.26  1999/04/15 14:10:51  pierre
-   * fix for bug0238.pp
-
-  Revision 1.25  1999/04/15 10:00:35  peter
-    * writeln(procvar) support for tp7 mode
-
-  Revision 1.24  1999/04/14 09:15:07  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.23  1999/04/08 10:16:48  peter
-    * funcret_valid flag is set for inline functions
-
-  Revision 1.22  1999/03/26 00:05:48  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.21  1999/03/24 23:17:37  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.20  1999/03/16 17:52:55  jonas
-    * changes for internal Val code (do a "make cycle OPT=-dvalintern" to test)
-    * in cgi386inl: also range checking for subrange types (compile with "-dreadrangecheck")
-    * in cgai386: also small fixes to emitrangecheck
-
-  Revision 1.19  1999/02/22 12:36:34  florian
-    + warning for lo/hi(longint/dword) in -So and -Sd mode added
-
-  Revision 1.18  1999/02/22 02:15:49  peter
-    * updates for ag386bin
-
-  Revision 1.17  1999/02/01 00:00:50  florian
-    * compiler crash fixed when constant arguments passed to round/trunc
-      exceeds the longint range
-
-  Revision 1.16  1999/01/28 19:43:43  peter
-    * fixed high generation for ansistrings with str,writeln
-
-  Revision 1.15  1999/01/27 16:28:22  pierre
-   * bug0157 solved : write(x:5.3) is rejected now
-
-  Revision 1.14  1999/01/21 22:10:50  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.13  1998/12/30 22:13:13  peter
-    * check the amount of paras for Str()
-
-  Revision 1.12  1998/12/15 10:23:31  peter
-    + -iSO, -iSP, -iTO, -iTP
-
-  Revision 1.11  1998/12/11 23:36:08  florian
-    + again more stuff for int64/qword:
-         - comparision operators
-         - code generation for: str, read(ln), write(ln)
-
-  Revision 1.10  1998/11/27 14:50:53  peter
-    + open strings, $P switch support
-
-  Revision 1.9  1998/11/24 17:04:28  peter
-    * fixed length(char) when char is a variable
-
-  Revision 1.8  1998/11/14 10:51:33  peter
-    * fixed low/high for record.field
-
-  Revision 1.7  1998/11/13 10:15:52  peter
-    * fixed ptr() with constants
-
-  Revision 1.6  1998/11/05 12:03:05  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.5  1998/10/20 11:16:47  pierre
-   + length(c) where C is a char is allways 1
-
-  Revision 1.4  1998/10/06 20:49:11  peter
-    * m68k compiler compiles again
-
-  Revision 1.3  1998/10/05 12:32:49  peter
-    + assert() support
-
-  Revision 1.2  1998/10/02 09:24:23  peter
-    * more constant expression evaluators
-
-  Revision 1.1  1998/09/23 20:42:24  peter
-    * splitted pass_1
-
 }
 }

+ 4 - 102
compiler/tcld.pas

@@ -502,7 +502,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.48  1999-10-26 12:30:46  peter
+  Revision 1.49  1999-11-06 14:34:30  peter
+    * truncated log to 20 revs
+
+  Revision 1.48  1999/10/26 12:30:46  peter
     * const parameter is now checked
     * const parameter is now checked
     * better and generic check if a node can be used for assigning
     * better and generic check if a node can be used for assigning
     * export fixes
     * export fixes
@@ -596,105 +599,4 @@ end.
         - empty array constructors are now handled correctly (e.g. for sysutils.format)
         - empty array constructors are now handled correctly (e.g. for sysutils.format)
         - comparsion of ansistrings was sometimes coded wrong
         - comparsion of ansistrings was sometimes coded wrong
 
 
-  Revision 1.29  1999/05/17 23:51:45  peter
-    * with temp vars now use a reference with a persistant temp instead
-      of setting datasize
-
-  Revision 1.27  1999/05/12 00:20:02  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.26  1999/05/06 09:05:36  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.25  1999/05/01 13:24:54  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.24  1999/04/28 06:02:17  florian
-    * changes of Bruessel:
-       + message handler can now take an explicit self
-       * typinfo fixed: sometimes the type names weren't written
-       * the type checking for pointer comparisations and subtraction
-         and are now more strict (was also buggy)
-       * small bug fix to link.pas to support compiling on another
-         drive
-       * probable bug in popt386 fixed: call/jmp => push/jmp
-         transformation didn't count correctly the jmp references
-       + threadvar support
-       * warning if ln/sqrt gets an invalid constant argument
-
-  Revision 1.23  1999/04/21 21:57:33  pierre
-   * previous log corrected
-
-  Revision 1.22  1999/04/21 16:31:47  pierre
-  * some wrong code in firstfuncret corrected
-
-  Revision 1.21  1999/04/01 21:59:57  peter
-    * type error for array constructor with array,record as argument
-
-  Revision 1.20  1999/03/24 23:17:39  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.19  1999/03/18 11:21:52  peter
-    * convert only to s32bit if integer or enum
-
-  Revision 1.18  1999/03/16 21:02:10  peter
-    * all array of const enum/ord are converted to s32bit
-
-  Revision 1.17  1999/03/10 13:24:23  pierre
-   * array of const type to definition field
-
-  Revision 1.16  1999/02/22 02:15:52  peter
-    * updates for ag386bin
-
-  Revision 1.15  1999/02/15 13:13:19  pierre
-   * fix for bug0216
-
-  Revision 1.14  1999/01/27 00:13:58  florian
-    * "procedure of object"-stuff fixed
-
-  Revision 1.13  1999/01/21 16:41:07  pierre
-   * fix for constructor inside with statements
-
-  Revision 1.12  1998/12/30 13:41:19  peter
-    * released valuepara
-
-  Revision 1.11  1998/11/18 17:45:28  peter
-    * fixes for VALUEPARA
-
-  Revision 1.10  1998/11/18 15:44:23  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.9  1998/11/17 00:36:49  peter
-    * more ansistring fixes
-
-  Revision 1.8  1998/11/10 10:09:18  peter
-    * va_list -> array of const
-
-  Revision 1.7  1998/11/05 14:26:48  peter
-    * fixed variant warning with was sometimes said with sets
-
-  Revision 1.6  1998/10/19 08:55:12  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.5  1998/10/06 20:49:12  peter
-    * m68k compiler compiles again
-
-  Revision 1.4  1998/09/28 11:07:40  peter
-    + floatdef support for array of const
-
-  Revision 1.3  1998/09/27 10:16:27  florian
-    * type casts pchar<->ansistring fixed
-    * ansistring[..] calls does now an unique call
-
-  Revision 1.2  1998/09/24 15:13:48  peter
-    * fixed type node which was always set to void :(
-
-  Revision 1.1  1998/09/23 20:42:24  peter
-    * splitted pass_1
-
 }
 }

+ 4 - 4
compiler/tcmat.pas

@@ -408,7 +408,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.21  1999-10-26 12:30:46  peter
+  Revision 1.22  1999-11-06 14:34:30  peter
+    * truncated log to 20 revs
+
+  Revision 1.21  1999/10/26 12:30:46  peter
     * const parameter is now checked
     * const parameter is now checked
     * better and generic check if a node can be used for assigning
     * better and generic check if a node can be used for assigning
     * export fixes
     * export fixes
@@ -493,7 +496,4 @@ end.
   Revision 1.2  1998/10/11 14:31:20  peter
   Revision 1.2  1998/10/11 14:31:20  peter
     + checks for division by zero
     + checks for division by zero
 
 
-  Revision 1.1  1998/09/23 20:42:24  peter
-    * splitted pass_1
-
 }
 }

+ 4 - 53
compiler/tcmem.pas

@@ -629,7 +629,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.31  1999-10-26 12:30:46  peter
+  Revision 1.32  1999-11-06 14:34:30  peter
+    * truncated log to 20 revs
+
+  Revision 1.31  1999/10/26 12:30:46  peter
     * const parameter is now checked
     * const parameter is now checked
     * better and generic check if a node can be used for assigning
     * better and generic check if a node can be used for assigning
     * export fixes
     * export fixes
@@ -709,57 +712,5 @@ end.
   Revision 1.16  1999/05/18 09:52:21  peter
   Revision 1.16  1999/05/18 09:52:21  peter
     * procedure of object and addrn fixes
     * procedure of object and addrn fixes
 
 
-  Revision 1.15  1999/05/17 23:51:46  peter
-    * with temp vars now use a reference with a persistant temp instead
-      of setting datasize
-
-  Revision 1.14  1999/05/01 13:24:57  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.13  1999/04/26 18:30:05  peter
-    * farpointerdef moved into pointerdef.is_far
-
-  Revision 1.12  1999/03/02 18:24:24  peter
-    * fixed overloading of array of char
-
-  Revision 1.11  1999/02/22 02:15:54  peter
-    * updates for ag386bin
-
-  Revision 1.10  1999/02/04 11:44:47  florian
-    * fixed indexed access of ansistrings to temp. ansistring, i.e.
-      c:=(s1+s2)[i], the temp is now correctly remove and the generated
-      code is also fixed
-
-  Revision 1.9  1999/01/22 12:18:34  pierre
-   * with bug introduced with DIRECTWITH removed
-
-  Revision 1.8  1999/01/21 16:41:08  pierre
-   * fix for constructor inside with statements
-
-  Revision 1.7  1998/12/30 22:15:59  peter
-    + farpointer type
-    * absolutesym now also stores if its far
-
-  Revision 1.6  1998/12/15 17:16:02  peter
-    * fixed const s : ^string
-    * first things for const pchar : @string[1]
-
-  Revision 1.5  1998/12/11 00:03:57  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.4  1998/11/25 19:12:53  pierre
-    * var:=new(pointer_type) support added
-
-  Revision 1.3  1998/09/26 15:03:05  florian
-    * small problems with DOM and excpetions fixed (code generation
-      of raise was wrong and self was sometimes destroyed :()
-
-  Revision 1.2  1998/09/24 23:49:24  peter
-    + aktmodeswitches
-
-  Revision 1.1  1998/09/23 20:42:24  peter
-    * splitted pass_1
-
 }
 }
 
 

+ 4 - 62
compiler/temp_gen.pas

@@ -527,7 +527,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.37  1999-09-27 23:45:02  peter
+  Revision 1.38  1999-11-06 14:34:31  peter
+    * truncated log to 20 revs
+
+  Revision 1.37  1999/09/27 23:45:02  peter
     * procinfo is now a pointer
     * procinfo is now a pointer
     * support for result setting in sub procedure
     * support for result setting in sub procedure
 
 
@@ -601,66 +604,5 @@ end.
   Revision 1.18  1999/04/16 14:03:39  pierre
   Revision 1.18  1999/04/16 14:03:39  pierre
    * added paitempalloc for tempansi
    * added paitempalloc for tempansi
 
 
-  Revision 1.17  1999/04/16 11:49:45  peter
-    + tempalloc
-    + -at to show temp alloc info in .s file
-
-  Revision 1.16  1999/04/14 09:10:46  peter
-    * fixed tempansi which set wrong pos in free temp
-
-  Revision 1.15  1999/04/09 13:05:45  pierre
-   * Minenumsize=1 under TEST_ENUMSIZE cond because buggy
-
-  Revision 1.14  1999/04/09 09:55:20  peter
-    * typo fixed
-
-  Revision 1.13  1999/04/09 08:39:20  peter
-    * fixed reuse position
-
-  Revision 1.12  1999/04/08 23:52:59  pierre
-   + tempansilist and gettempansistringreference
-
-  Revision 1.11  1999/04/08 20:59:44  florian
-    * fixed problem with default properties which are a class
-    * case bug (from the mailing list with -O2) fixed, the
-      distance of the case labels can be greater than the positive
-      range of a longint => it is now a dword for fpc
-
-  Revision 1.10  1999/04/06 11:19:49  peter
-    * fixed temp reuse
-
-  Revision 1.9  1999/02/22 02:15:56  peter
-    * updates for ag386bin
-
-  Revision 1.8  1999/02/11 09:35:19  pierre
-   * ExtDebug conditional infinite loop on temp problem removed
-
-  Revision 1.7  1999/02/02 23:52:33  florian
-    * problem with calls to method pointers in methods fixed
-    - double ansistrings temp management removed
-
-  Revision 1.6  1999/01/15 11:34:23  pierre
-   + better info for temp allocation debugging
-
-  Revision 1.5  1998/11/30 09:43:24  pierre
-    * some range check bugs fixed (still not working !)
-    + added DLL writing support for win32 (also accepts variables)
-    + TempAnsi for code that could be used for Temporary ansi strings
-      handling
-
-  Revision 1.4  1998/10/09 08:56:32  pierre
-    * several memory leaks fixed
-
-  Revision 1.3  1998/07/16 08:01:42  pierre
-    * small bug correction due to newinput
-      (only with tempdebug conditional)
-
-  Revision 1.2  1998/07/10 10:51:05  peter
-    * m68k updates
-
-  Revision 1.1  1998/06/08 16:07:41  pierre
-    * temp_gen contains all temporary var functions
-      (processor independent)
-
 }
 }
 
 

+ 4 - 64
compiler/tgeni386.pas

@@ -615,7 +615,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.35  1999-09-27 23:45:02  peter
+  Revision 1.36  1999-11-06 14:34:31  peter
+    * truncated log to 20 revs
+
+  Revision 1.35  1999/09/27 23:45:02  peter
     * procinfo is now a pointer
     * procinfo is now a pointer
     * support for result setting in sub procedure
     * support for result setting in sub procedure
 
 
@@ -696,68 +699,5 @@ end.
     * fixed previous commit bug fix of getexplicitregister32
     * fixed previous commit bug fix of getexplicitregister32
       (usableregs32 was decremented twice, thnaks Pierre for that hint)
       (usableregs32 was decremented twice, thnaks Pierre for that hint)
 
 
-  Revision 1.15  1998/12/11 16:10:13  florian
-    + shifting for 64 bit ints added
-    * bug in getexplicitregister32 fixed: usableregs wasn't decremented !!
-
-  Revision 1.14  1998/12/11 00:03:59  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.13  1998/10/21 08:40:03  florian
-    + ansistring operator +
-    + $h and string[n] for n>255 added
-    * small problem with TP fixed
-
-  Revision 1.12  1998/09/20 17:11:24  jonas
-    * released REGALLOC
-
-  Revision 1.11  1998/09/16 17:58:33  jonas
-    * fixed -dRegAlloc and -dDRegalloc problems
-
-  Revision 1.10  1998/09/01 09:03:47  peter
-    + resetregistercount, resetusableregisters
-
-  Revision 1.9  1998/08/19 16:07:56  jonas
-    * changed optimizer switches + cleanup of DestroyRefs in daopt386.pas
-
-  Revision 1.8  1998/08/10 14:50:34  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.7  1998/06/08 13:13:47  pierre
-    + temporary variables now in temp_gen.pas unit
-      because it is processor independent
-    * mppc68k.bat modified to undefine i386 and support_mmx
-      (which are defaults for i386)
-
-  Revision 1.6  1998/05/20 09:42:38  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.5  1998/05/11 13:07:58  peter
-    + $ifdef NEWPPU for the new ppuformat
-    + $define GDB not longer required
-    * removed all warnings and stripped some log comments
-    * no findfirst/findnext anymore to remove smartlink *.o files
-
-  Revision 1.4  1998/04/29 10:34:08  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.3  1998/04/09 22:16:36  florian
-    * problem with previous REGALLOC solved
-    * improved property support
-
-  Revision 1.2  1998/04/09 15:46:39  florian
-    + register allocation tracing stuff added
 }
 }
 
 

+ 4 - 335
compiler/tree.pas

@@ -1791,7 +1791,10 @@ unit tree;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.100  1999-10-22 14:37:31  peter
+  Revision 1.101  1999-11-06 14:34:31  peter
+    * truncated log to 20 revs
+
+  Revision 1.100  1999/10/22 14:37:31  peter
     * error when properties are passed to var parameters
     * error when properties are passed to var parameters
 
 
   Revision 1.99  1999/09/27 23:45:03  peter
   Revision 1.99  1999/09/27 23:45:03  peter
@@ -1870,339 +1873,5 @@ end.
   Revision 1.81  1999/05/18 09:52:22  peter
   Revision 1.81  1999/05/18 09:52:22  peter
     * procedure of object and addrn fixes
     * procedure of object and addrn fixes
 
 
-  Revision 1.80  1999/05/17 23:51:48  peter
-    * with temp vars now use a reference with a persistant temp instead
-      of setting datasize
-
-  Revision 1.79  1999/05/17 13:00:36  pierre
-   * old field suppressed was still in debug code
-
-  Revision 1.78  1999/05/12 00:20:03  peter
-    * removed R_DEFAULT_SEG
-    * uniform float names
-
-  Revision 1.77  1999/05/06 09:05:39  peter
-    * generic write_float and str_float
-    * fixed constant float conversions
-
-  Revision 1.76  1999/05/04 14:27:04  pierre
-   * avoid RTE220 in gentypedconstloadnode
-
-  Revision 1.75  1999/05/01 13:25:02  peter
-    * merged nasm compiler
-    * old asm moved to oldasm/
-
-  Revision 1.74  1999/04/21 21:45:31  pierre
-   * wrong log fro v1.73 corrected
-
-  Revision 1.73  1999/04/21 16:31:49  pierre
-  + offset field for temp storage added $ifdef TEMPS_NOT_PUSH
-
-  Revision 1.72  1999/04/15 09:01:35  peter
-    * fixed set loading
-    * object inheritance support for browser
-
-  Revision 1.71  1999/03/31 13:55:28  peter
-    * assembler inlining working for ag386bin
-
-  Revision 1.70  1999/03/26 00:05:49  peter
-    * released valintern
-    + deffile is now removed when compiling is finished
-    * ^( compiles now correct
-    + static directive
-    * shrd fixed
-
-  Revision 1.69  1999/03/24 23:17:41  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.68  1999/03/02 18:24:25  peter
-    * fixed overloading of array of char
-
-  Revision 1.67  1999/02/25 21:02:56  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.66  1999/02/22 02:15:59  peter
-    * updates for ag386bin
-
-  Revision 1.65  1999/02/11 09:46:31  pierre
-    * fix for normal method calls inside static methods :
-      WARNING there were both parser and codegen errors !!
-      added static_call boolean to calln tree
-
-  Revision 1.64  1999/01/27 12:57:22  pierre
-   * memory leaks with hightree solved by adding a new disposetyp
-     dt_leftrighthigh
-
-  Revision 1.63  1999/01/27 00:14:00  florian
-    * "procedure of object"-stuff fixed
-
-  Revision 1.62  1999/01/21 22:10:52  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.61  1999/01/21 16:41:09  pierre
-   * fix for constructor inside with statements
-
-  Revision 1.60  1998/12/15 11:52:19  peter
-    * fixed dup release of statement label in case
-
-  Revision 1.59  1998/12/15 10:23:32  peter
-    + -iSO, -iSP, -iTO, -iTP
-
-  Revision 1.58  1998/12/11 00:04:02  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.57  1998/12/04 10:18:13  florian
-    * some stuff for procedures of object added
-    * bug with overridden virtual constructors fixed (reported by Italo Gomes)
-
-  Revision 1.56  1998/12/02 16:23:32  jonas
-    * changed "if longintvar in set" to case or "if () or () .." statements
-    * tree.pas: changed inlinenumber (and associated constructor/vars) to a byte
-
-  Revision 1.55  1998/11/29 12:40:20  peter
-    * newcnv -> not oldcnv
-
-  Revision 1.54  1998/11/26 13:10:44  peter
-    * new int - int conversion -dNEWCNV
-    * some function renamings
-
-  Revision 1.53  1998/11/24 12:52:42  peter
-    * sets are not written twice anymore
-    * optimize for emptyset+single element which uses a new routine from
-      set.inc FPC_SET_CREATE_ELEMENT
-
-  Revision 1.52  1998/11/23 17:51:58  pierre
-   * added checking before dispose of reference string
-
-  Revision 1.51  1998/11/13 10:15:53  peter
-    * fixed ptr() with constants
-
-  Revision 1.50  1998/11/10 10:09:20  peter
-    * va_list -> array of const
-
-  Revision 1.49  1998/11/05 12:03:07  peter
-    * released useansistring
-    * removed -Sv, its now available in fpc modes
-
-  Revision 1.48  1998/10/21 15:12:59  pierre
-    * bug fix for IOCHECK inside a procedure with iocheck modifier
-    * removed the GPF for unexistant overloading
-      (firstcall was called with procedinition=nil !)
-    * changed typen to what Florian proposed
-      gentypenode(p : pdef) sets the typenodetype field
-      and resulttype is only set if inside bt_type block !
-
-  Revision 1.47  1998/10/20 08:07:07  pierre
-    * several memory corruptions due to double freemem solved
-      => never use p^.loc.location:=p^.left^.loc.location;
-    + finally I added now by default
-      that ra386dir translates global and unit symbols
-    + added a first field in tsymtable and
-      a nextsym field in tsym
-      (this allows to obtain ordered type info for
-      records and objects in gdb !)
-
-  Revision 1.46  1998/10/08 17:17:37  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.45  1998/10/05 21:33:33  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.44  1998/09/28 16:57:28  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.43  1998/09/27 10:16:28  florian
-    * type casts pchar<->ansistring fixed
-    * ansistring[..] calls does now an unique call
-
-  Revision 1.42  1998/09/23 12:03:59  peter
-    * overloading fix for array of const
-
-  Revision 1.41  1998/09/23 09:58:55  peter
-    * first working array of const things
-
-  Revision 1.40  1998/09/22 15:34:07  peter
-    + pchar -> string conversion
-
-  Revision 1.39  1998/09/21 08:45:27  pierre
-    + added vmt_offset in tobjectdef.write for fututre use
-      (first steps to have objects without vmt if no virtual !!)
-    + added fpu_used field for tabstractprocdef  :
-      sets this level to 2 if the functions return with value in FPU
-      (is then set to correct value at parsing of implementation)
-      THIS MIGHT refuse some code with FPU expression too complex
-      that were accepted before and even in some cases
-      that don't overflow in fact
-      ( like if f : float; is a forward that finally in implementation
-       only uses one fpu register !!)
-      Nevertheless I think that it will improve security on
-      FPU operations !!
-    * most other changes only for UseBrowser code
-      (added symtable references for record and objects)
-      local switch for refs to args and local of each function
-      (static symtable still missing)
-      UseBrowser still not stable and probably broken by
-      the definition hash array !!
-
-  Revision 1.38  1998/09/16 01:06:47  carl
-    * crash bugfix in firstaddr
-
-  Revision 1.37  1998/09/08 10:38:04  pierre
-    * some variable fields inside conditional were not updated
-
-  Revision 1.36  1998/09/07 18:46:17  peter
-    * update smartlinking, uses getdatalabel
-    * renamed ptree.value vars to value_str,value_real,value_set
-
-  Revision 1.35  1998/09/04 08:42:11  peter
-    * updated some error messages
-
-  Revision 1.34  1998/09/01 17:39:54  peter
-    + internal constant functions
-
-  Revision 1.33  1998/08/28 12:51:44  florian
-    + ansistring to pchar type cast fixed
-
-  Revision 1.32  1998/08/28 10:54:25  peter
-    * fixed smallset generation from elements, it has never worked before!
-
-  Revision 1.31  1998/08/21 14:08:58  pierre
-    + TEST_FUNCRET now default (old code removed)
-      works also for m68k (at least compiles)
-
-  Revision 1.30  1998/08/18 09:24:47  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.29  1998/08/14 18:18:48  peter
-    + dynamic set contruction
-    * smallsets are now working (always longint size)
-
-  Revision 1.28  1998/08/13 11:00:13  peter
-    * fixed procedure<>procedure construct
-
-  Revision 1.27  1998/08/10 14:50:35  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.26  1998/08/10 09:57:19  peter
-    - Remove InitTree which was empty and obsolete
-
-  Revision 1.25  1998/08/02 16:42:02  florian
-    * on o : tobject do should also work now, the exceptsymtable shouldn't be
-      disposed by dellexlevel
-
-  Revision 1.24  1998/07/30 11:18:23  florian
-    + first implementation of try ... except on .. do end;
-    * limitiation of 65535 bytes parameters for cdecl removed
-
-  Revision 1.23  1998/07/24 22:17:01  florian
-    * internal error 10 together with array access fixed. I hope
-      that's the final fix.
-
-  Revision 1.22  1998/07/20 10:23:05  florian
-    * better ansi string assignement
-
-  Revision 1.21  1998/07/14 21:46:56  peter
-    * updated messages file
-
-  Revision 1.20  1998/07/14 14:47:11  peter
-    * released NEWINPUT
-
-  Revision 1.19  1998/07/08 14:56:53  daniel
-  * Fixed $ifdef TP.
-
-  Revision 1.18  1998/07/07 11:20:18  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.17  1998/06/22 08:59:03  daniel
-  - Removed pool of nodes.
-
-  Revision 1.16  1998/06/12 14:50:49  peter
-    * removed the tree dependency to types.pas
-    * long_fil.pas support (not fully tested yet)
-
-  Revision 1.15  1998/06/06 08:39:07  peter
-    * it needs types
-
-  Revision 1.14  1998/06/05 14:37:40  pierre
-    * fixes for inline for operators
-    * inline procedure more correctly restricted
-
-  Revision 1.13  1998/06/04 09:55:49  pierre
-    * demangled name of procsym reworked to become independant of the mangling scheme
-
-  Revision 1.12  1998/06/03 22:49:06  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.10  1998/05/20 09:42:38  pierre
-    + UseTokenInfo now default
-    * unit in interface uses and implementation uses gives error now
-    * only one error for unknown symbol (uses lastsymknown boolean)
-      the problem came from the label code !
-    + first inlined procedures and function work
-      (warning there might be allowed cases were the result is still wrong !!)
-    * UseBrower updated gives a global list of all position of all used symbols
-      with switch -gb
-
-  Revision 1.9  1998/05/12 10:47:00  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.8  1998/05/07 00:17:01  peter
-    * smartlinking for sets
-    + consts labels are now concated/generated in hcodegen
-    * moved some cpu code to cga and some none cpu depended code from cga
-      to tree and hcodegen and cleanup of hcodegen
-    * assembling .. output reduced for smartlinking ;)
-
-  Revision 1.7  1998/05/06 15:04:21  pierre
-    + when trying to find source files of a ppufile
-      check the includepathlist for included files
-      the main file must still be in the same directory
-
-  Revision 1.6  1998/05/06 08:38:52  pierre
-    * better position info with UseTokenInfo
-      UseTokenInfo greatly simplified
-    + added check for changed tree after first time firstpass
-      (if we could remove all the cases were it happen
-      we could skip all firstpass if firstpasscount > 1)
-      Only with ExtDebug
-
-  Revision 1.5  1998/04/30 15:59:43  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.4  1998/04/29 10:34:08  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.3  1998/04/21 10:16:49  peter
-    * patches from strasbourg
-    * objects is not used anymore in the fpc compiled version
-
-  Revision 1.2  1998/04/07 22:45:05  florian
-    * bug0092, bug0115 and bug0121 fixed
-    + packed object/class/array
 }
 }
 
 

+ 4 - 271
compiler/types.pas

@@ -985,7 +985,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.90  1999-10-26 12:30:46  peter
+  Revision 1.91  1999-11-06 14:34:31  peter
+    * truncated log to 20 revs
+
+  Revision 1.90  1999/10/26 12:30:46  peter
     * const parameter is now checked
     * const parameter is now checked
     * better and generic check if a node can be used for assigning
     * better and generic check if a node can be used for assigning
     * export fixes
     * export fixes
@@ -1069,274 +1072,4 @@ end.
   Revision 1.71  1999/06/03 09:34:13  peter
   Revision 1.71  1999/06/03 09:34:13  peter
     * better methodpointer check for proc->procvar
     * better methodpointer check for proc->procvar
 
 
-  Revision 1.70  1999/06/02 22:25:55  pierre
-  types.pas
-
-  Revision 1.69  1999/06/02 10:11:55  florian
-    * make cycle fixed i.e. compilation with 0.99.10
-    * some fixes for qword
-    * start of register calling conventions
-
-  Revision 1.68  1999/06/01 19:27:58  peter
-    * better checks for procvar and methodpointer
-
-  Revision 1.67  1999/05/31 22:54:19  peter
-    * when range check error is found then fix the value to be within the
-      range
-
-  Revision 1.66  1999/05/28 11:00:51  peter
-    * removed ungettempoftype
-
-  Revision 1.65  1999/05/23 18:42:23  florian
-    * better error recovering in typed constants
-    * some problems with arrays of const fixed, some problems
-      due my previous
-       - the location type of array constructor is now LOC_MEM
-       - the pushing of high fixed
-       - parameter copying fixed
-       - zero temp. allocation removed
-    * small problem in the assembler writers fixed:
-      ref to nil wasn't written correctly
-
-  Revision 1.64  1999/05/19 20:55:08  florian
-    * fix of my previous commit
-
-  Revision 1.63  1999/05/19 20:40:15  florian
-    * fixed a couple of array related bugs:
-      - var a : array[0..1] of char;   p : pchar;  p:=a+123; works now
-      - open arrays with an odd size doesn't work: movsb wasn't generated
-      - introduced some new array type helper routines (is_special_array) etc.
-      - made the array type checking in isconvertable more strict, often
-        open array can be used where is wasn't allowed etc...
-
-  Revision 1.62  1999/05/19 16:48:29  florian
-    * tdef.typename: returns a now a proper type name for the most types
-
-  Revision 1.61  1999/05/19 10:31:56  florian
-    * two bugs reported by Romio (bugs 13) are fixed:
-        - empty array constructors are now handled correctly (e.g. for sysutils.format)
-        - comparsion of ansistrings was sometimes coded wrong
-
-  Revision 1.60  1999/05/18 14:16:01  peter
-    * containsself fixes
-    * checktypes()
-
-  Revision 1.59  1999/05/18 09:52:24  peter
-    * procedure of object and addrn fixes
-
-  Revision 1.58  1999/04/19 09:29:51  pierre
-    + ungettempoftype(pdef) boolean function
-      returns true (can call ungetiftemp )
-      unless the temp should be "unget" with temptoremove
-      (currently ansistring or widestring !)
-
-  Revision 1.57  1999/04/14 09:15:08  peter
-    * first things to store the symbol/def number in the ppu
-
-  Revision 1.56  1999/03/24 23:17:42  peter
-    * fixed bugs 212,222,225,227,229,231,233
-
-  Revision 1.55  1999/03/09 11:45:42  pierre
-   * small arrays and records (size <=4) are copied directly
-
-  Revision 1.54  1999/03/02 22:52:20  peter
-    * fixed char array, which can start with all possible values
-
-  Revision 1.53  1999/02/25 21:02:57  peter
-    * ag386bin updates
-    + coff writer
-
-  Revision 1.52  1999/02/24 09:51:44  florian
-    * wrong warning fixed, if a non-virtual method was hidden by a virtual
-      method (repoerted by Matthias Koeppe)
-
-  Revision 1.51  1999/02/22 23:33:31  florian
-    + message directive for integers added
-
-  Revision 1.50  1999/02/22 20:13:42  florian
-    + first implementation of message keyword
-
-  Revision 1.49  1999/02/16 00:45:30  peter
-    * fixed crashes by forgotten strpnew() for init_symbol
-
-  Revision 1.48  1999/02/09 23:03:08  florian
-    * check for duplicate field names in inherited classes/objects
-    * bug with self from the mailing list solved (the problem
-      was that classes were sometimes pushed wrong)
-
-  Revision 1.47  1999/01/27 00:14:01  florian
-    * "procedure of object"-stuff fixed
-
-  Revision 1.46  1999/01/21 22:10:54  peter
-    * fixed array of const
-    * generic platform independent high() support
-
-  Revision 1.45  1999/01/20 12:34:22  peter
-    * fixed typed file read/write
-
-  Revision 1.44  1999/01/15 11:33:03  pierre
-   * bug in mmx code removed
-
-  Revision 1.43  1998/12/30 13:41:20  peter
-    * released valuepara
-
-  Revision 1.42  1998/12/11 00:04:03  peter
-    + globtype,tokens,version unit splitted from globals
-
-  Revision 1.41  1998/12/10 09:47:33  florian
-    + basic operations with int64/qord (compiler with -dint64)
-    + rtti of enumerations extended: names are now written
-
-  Revision 1.40  1998/12/04 10:18:14  florian
-    * some stuff for procedures of object added
-    * bug with overridden virtual constructors fixed (reported by Italo Gomes)
-
-  Revision 1.39  1998/11/27 14:50:55  peter
-    + open strings, $P switch support
-
-  Revision 1.38  1998/11/18 15:44:24  peter
-    * VALUEPARA for tp7 compatible value parameters
-
-  Revision 1.37  1998/11/13 10:15:50  peter
-    * fixed ptr() with constants
-
-  Revision 1.36  1998/11/10 10:09:21  peter
-    * va_list -> array of const
-
-  Revision 1.35  1998/10/19 08:55:13  pierre
-    * wrong stabs info corrected once again !!
-    + variable vmt offset with vmt field only if required
-      implemented now !!!
-
-  Revision 1.34  1998/10/12 09:50:06  florian
-    + support of <procedure var type>:=<pointer> in delphi mode added
-
-  Revision 1.33  1998/10/06 20:43:30  peter
-    * fixed set of bugs. like set of false..true set of #1..#255 and
-      set of #1..true which was allowed
-
-  Revision 1.32  1998/10/05 21:33:35  peter
-    * fixed 161,165,166,167,168
-
-  Revision 1.31  1998/09/23 09:58:56  peter
-    * first working array of const things
-
-  Revision 1.30  1998/09/22 15:40:58  peter
-    * some extra ifdef GDB
-
-  Revision 1.29  1998/09/16 12:37:31  michael
-  Added FPC_ prefix to abstracterror
-
-  Revision 1.28  1998/09/09 16:44:23  florian
-    * I hope, the case bug is fixed now
-
-  Revision 1.27  1998/09/07 17:37:07  florian
-    * first fixes for published properties
-
-  Revision 1.26  1998/09/04 12:24:31  florian
-    * bug0159 fixed
-
-  Revision 1.25  1998/09/04 09:06:36  florian
-   * bug0132 fixed
-
-  Revision 1.24  1998/09/04 08:36:49  peter
-    * fixed boolean:=integer which is not explicit
-
-  Revision 1.23  1998/09/01 17:39:55  peter
-    + internal constant functions
-
-  Revision 1.22  1998/09/01 12:53:28  peter
-    + aktpackenum
-
-  Revision 1.21  1998/08/19 00:42:45  peter
-    + subrange types for enums
-    + checking for bounds type with ranges
-
-  Revision 1.20  1998/08/18 14:17:14  pierre
-    * bug about assigning the return value of a function to
-      a procvar fixed : warning
-      assigning a proc to a procvar need @ in FPC mode !!
-    * missing file/line info restored
-
-  Revision 1.19  1998/08/18 09:24:48  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.18  1998/08/14 18:18:49  peter
-    + dynamic set contruction
-    * smallsets are now working (always longint size)
-
-  Revision 1.17  1998/08/05 16:00:17  florian
-    * some fixes for ansi strings
-
-  Revision 1.16  1998/07/20 23:35:50  michael
-  Const ansistrings are not copied.
-
-  Revision 1.15  1998/07/18 22:54:32  florian
-    * some ansi/wide/longstring support fixed:
-       o parameter passing
-       o returning as result from functions
-
-  Revision 1.14  1998/06/12 14:50:50  peter
-    * removed the tree dependency to types.pas
-    * long_fil.pas support (not fully tested yet)
-
-  Revision 1.13  1998/06/03 22:49:07  peter
-    + wordbool,longbool
-    * rename bis,von -> high,low
-    * moved some systemunit loading/creating to psystem.pas
-
-  Revision 1.12  1998/05/12 10:47:00  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.11  1998/05/01 16:38:46  florian
-    * handling of private and protected fixed
-    + change_keywords_to_tp implemented to remove
-      keywords which aren't supported by tp
-    * break and continue are now symbols of the system unit
-    + widestring, longstring and ansistring type released
-
-  Revision 1.10  1998/04/29 10:34:08  pierre
-    + added some code for ansistring (not complete nor working yet)
-    * corrected operator overloading
-    * corrected nasm output
-    + started inline procedures
-    + added starstarn : use ** for exponentiation (^ gave problems)
-    + started UseTokenInfo cond to get accurate positions
-
-  Revision 1.9  1998/04/21 10:16:49  peter
-    * patches from strasbourg
-    * objects is not used anymore in the fpc compiled version
-
-  Revision 1.8  1998/04/12 22:39:44  florian
-    * problem with read access to properties solved
-    * correct handling of hidding methods via virtual (COM)
-    * correct result type of constructor calls (COM), the resulttype
-      depends now on the type of the class reference
-
-  Revision 1.7  1998/04/10 21:36:56  florian
-    + some stuff to support method pointers (procedure of object) added
-      (declaration, parameter handling)
-
-  Revision 1.6  1998/04/10 15:39:49  florian
-    * more fixes to get classes.pas compiled
-
-  Revision 1.5  1998/04/09 23:02:16  florian
-    * small problems solved to get remake3 work
-
-  Revision 1.4  1998/04/08 16:58:09  pierre
-    * several bugfixes
-      ADD ADC and AND are also sign extended
-      nasm output OK (program still crashes at end
-      and creates wrong assembler files !!)
-      procsym types sym in tdef removed !!
-
-  Revision 1.3  1998/04/08 11:34:22  peter
-    * nasm works (linux only tested)
 }
 }

+ 4 - 95
compiler/verbose.pas

@@ -507,7 +507,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.42  1999-08-05 16:53:28  peter
+  Revision 1.43  1999-11-06 14:34:32  peter
+    * truncated log to 20 revs
+
+  Revision 1.42  1999/08/05 16:53:28  peter
     * V_Fatal=1, all other V_ are also increased
     * V_Fatal=1, all other V_ are also increased
     * Check for local procedure when assigning procvar
     * Check for local procedure when assigning procvar
     * fixed comment parsing because directives
     * fixed comment parsing because directives
@@ -581,98 +584,4 @@ end.
   Revision 1.25  1998/10/22 15:18:49  florian
   Revision 1.25  1998/10/22 15:18:49  florian
     + switch -vx for win32 added
     + switch -vx for win32 added
 
 
-  Revision 1.24  1998/10/08 17:17:39  pierre
-    * current_module old scanner tagged as invalid if unit is recompiled
-    + added ppheap for better info on tracegetmem of heaptrc
-      (adds line column and file index)
-    * several memory leaks removed ith help of heaptrc !!
-
-  Revision 1.23  1998/10/06 17:17:01  pierre
-    * some memory leaks fixed (thanks to Peter for heaptrc !)
-
-  Revision 1.22  1998/10/05 13:51:36  peter
-    * if maxerrorcount is reached display a msg
-
-  Revision 1.21  1998/09/28 16:57:30  pierre
-    * changed all length(p^.value_str^) into str_length(p)
-      to get it work with and without ansistrings
-    * changed sourcefiles field of tmodule to a pointer
-
-  Revision 1.20  1998/09/05 22:11:06  florian
-    + switch -vb
-    * while/repeat loops accept now also word/longbool conditions
-    * makebooltojump did an invalid ungetregister32, fixed
-
-  Revision 1.19  1998/09/01 12:49:52  peter
-    * better setverbosity to support W+/W- etc.
-
-  Revision 1.18  1998/08/29 13:52:40  peter
-    + new messagefile
-    * merged optione.msg into errore.msg
-
-  Revision 1.17  1998/08/19 14:57:52  peter
-    * small fix for aktfilepos
-
-  Revision 1.16  1998/08/18 14:17:15  pierre
-    * bug about assigning the return value of a function to
-      a procvar fixed : warning
-      assigning a proc to a procvar need @ in FPC mode !!
-    * missing file/line info restored
-
-  Revision 1.15  1998/08/18 09:24:49  pierre
-    * small warning position bug fixed
-    * support_mmx switches splitting was missing
-    * rhide error and warning output corrected
-
-  Revision 1.14  1998/08/11 14:09:15  peter
-    * fixed some messages and smaller msgtxt.inc
-
-  Revision 1.13  1998/08/10 14:50:37  peter
-    + localswitches, moduleswitches, globalswitches splitting
-
-  Revision 1.12  1998/08/10 10:18:37  peter
-    + Compiler,Comphook unit which are the new interface units to the
-      compiler
-
-  Revision 1.11  1998/07/14 14:47:13  peter
-    * released NEWINPUT
-
-  Revision 1.10  1998/07/07 12:32:56  peter
-    * status.currentsource is now calculated in verbose (more accurated)
-
-  Revision 1.9  1998/07/07 11:20:20  peter
-    + NEWINPUT for a better inputfile and scanner object
-
-  Revision 1.8  1998/05/23 01:21:35  peter
-    + aktasmmode, aktoptprocessor, aktoutputformat
-    + smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
-    + $LIBNAME to set the library name where the unit will be put in
-    * splitted cgi386 a bit (codeseg to large for bp7)
-    * nasm, tasm works again. nasm moved to ag386nsm.pas
-
-  Revision 1.7  1998/05/21 19:33:40  peter
-    + better procedure directive handling and only one table
-
-  Revision 1.6  1998/05/12 10:47:01  peter
-    * moved printstatus to verb_def
-    + V_Normal which is between V_Error and V_Warning and doesn't have a
-      prefix like error: warning: and is included in V_Default
-    * fixed some messages
-    * first time parameter scan is only for -v and -T
-    - removed old style messages
-
-  Revision 1.5  1998/04/30 15:59:43  pierre
-    * GDB works again better :
-      correct type info in one pass
-    + UseTokenInfo for better source position
-    * fixed one remaining bug in scanner for line counts
-    * several little fixes
-
-  Revision 1.4  1998/04/23 12:11:22  peter
-    * fixed -v0 to displayV_Default (=errors+fatals)
-
-  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
 }
 }