Commit Graph

138 Commits

Author SHA1 Message Date
peter
6e7f776c4f + -gh for heaptrc unit 1998-12-08 10:18:07 +00:00
pierre
c89458e721 * new try for correct debug info generation 1998-12-01 23:40:53 +00:00
pierre
a1f1003555 * 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
1998-11-30 09:42:52 +00:00
peter
b4045fe57e + support for dll variables 1998-11-28 16:20:48 +00:00
pierre
50ccd479d2 + 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
1998-11-18 09:18:01 +00:00
pierre
93620d84dd * stackcheck removed for i386_win32
* exportlist does not crash at least !!
    (was need for tests dir !)z
1998-11-16 11:28:57 +00:00
pierre
364132b0bb * fix for bug0176 and bug0177 1998-11-12 12:55:16 +00:00
peter
c28675acab * fix for empty .o files and linking of libs 1998-11-12 11:34:58 +00:00
pierre
00f7988d1d * double initialization code calling bug fixed 1998-11-06 09:48:14 +00:00
peter
436274abfc + search_unit arg to only search for sources 1998-11-03 11:33:11 +00:00
peter
daecc1a750 * fix for lognunitname and longunit.pas 1998-10-30 12:23:41 +00:00
florian
7e40231ad7 * some dll support for win32
* fixed assembler writing for PalmOS
1998-10-29 11:35:36 +00:00
pierre
1dab5a8cf0 * removed some erros after other errors (introduced by useexcept)
* stabs works again correctly (for how long !)
1998-10-28 18:26:12 +00:00
pierre
1dfbb756e9 * classes get a vmt allways
* better error info (tried to remove
    several error strings introduced by the tpexcept handling)
1998-10-27 13:45:25 +00:00
peter
a69bfeb4b1 * unit check name works now for all units, not only systemunit 1998-10-26 09:34:50 +00:00
peter
b068ad3821 * 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
1998-10-22 23:53:27 +00:00
peter
4e3a568cbf * fixed imports generation at the wrong place 1998-10-22 11:36:34 +00:00
peter
99b31c91bc * check for importsection for empty asm file 1998-10-21 20:13:10 +00:00
peter
e0a2d434b5 * set also in_library flag when no .o is generated 1998-10-20 09:30:05 +00:00
peter
62ef9faa79 + empty .o files are not written anymore 1998-10-19 18:05:08 +00:00
pierre
a5f0168fbb * wrong stabs info corrected once again !!
+ variable vmt offset with vmt field only if required
    implemented now !!!
1998-10-19 08:54:53 +00:00
peter
1468993242 * new style for m68k/i386 infos and enums 1998-10-13 13:10:08 +00:00
pierre
63ff2ffbbc * some memory leaks specific to usebrowser define fixed
* removed tmodule.implsymtable (was like tmodule.localsymtable)
1998-10-09 16:36:01 +00:00
pierre
6f470079a0 * add a second load for PPU file 1998-10-09 14:38:50 +00:00
pierre
7621dc0b56 * several memory leaks fixed 1998-10-09 08:56:21 +00:00
peter
0fc61cdfc1 * -vu shows unit info, -vt shows tried/used files 1998-10-08 23:28:50 +00:00
pierre
bf6369f1b5 * 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 !!
1998-10-08 17:17:07 +00:00
peter
47c808f95a * fixed memory leaks for do nothing source
* fixed unit interdependency
1998-10-08 13:48:40 +00:00
pierre
3048845e68 * some memory leaks fixed (thanks to Peter for heaptrc !) 1998-10-06 17:16:31 +00:00
peter
4f0915d6e1 * fixed 161,165,166,167,168 1998-10-05 21:33:15 +00:00
peter
226a917014 * fixed unit interdependency with circular uses 1998-09-30 16:43:34 +00:00
peter
f4e51979ab * fixed circular uses which looped forever 1998-09-30 12:11:52 +00:00
pierre
ba6a341854 * did not compile for browser
* merge from fixes
1998-09-28 11:22:15 +00:00
peter
b17ea95bdd * fixed loaddefaultunits which was at the wrong place for programs, so
the default defs were not loaded when main was initialized
1998-09-28 11:04:03 +00:00
peter
8e85a889de + aktmodeswitches 1998-09-24 23:49:05 +00:00
pierre
7125b9236a * main program tmodule had no symtable (crashed browser)
* unit symbols problem fixed !!
1998-09-23 12:20:50 +00:00
pierre
b2661d12be + browsing updated and developed
records and objects fields are also stored
1998-09-22 17:13:42 +00:00
peter
266de92af2 * some extra ifdef GDB 1998-09-22 15:40:55 +00:00
pierre
d11f7636be + 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 !!
1998-09-21 08:45:05 +00:00
pierre
be29a0b86d + improvement on the usebrowser part
(does not work correctly for now)
1998-09-18 08:01:35 +00:00
peter
6848d5170d * fixed in_global to allow directives also after interface token 1998-09-09 15:33:06 +00:00
pierre
06104cdb46 * 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
1998-09-09 11:50:52 +00:00
peter
2f528ca8d9 * moved more inputfile things from tscannerfile to tinputfile
* changed ifdef Sourceline to cs_asm_source
1998-09-03 11:24:00 +00:00
peter
35a8d2e4fd * m68k and palmos updates from surebugfixes 1998-08-31 12:26:20 +00:00
peter
547dca7111 * fixed scannerfiles for macros
+ $I %<environment>%
1998-08-26 15:35:30 +00:00
peter
f002eb11a0 * fixed problem with libprefix at the wrong place
* fixed lib generation with smartlinking and no -CS used
1998-08-26 10:08:47 +00:00
peter
e68fa48b27 * fixed current_module^.in_implementation flag 1998-08-19 18:04:54 +00:00
peter
6cc16ea7f1 - removed OLDPPU 1998-08-17 10:10:04 +00:00
peter
cc64a929aa * static/shared linking updates 1998-08-17 09:17:43 +00:00
peter
1b24a06769 * setting the outputfile using -o works now to create static libs 1998-08-14 21:56:30 +00:00
peter
85c8a88cbe + localswitches, moduleswitches, globalswitches splitting 1998-08-10 14:49:33 +00:00
peter
6396267185 + Compiler,Comphook unit which are the new interface units to the
compiler
1998-08-10 10:18:23 +00:00
peter
1bffd4e290 * released NEWINPUT 1998-07-14 14:46:36 +00:00
peter
b5f4535ec1 * heap_size for m68k 1998-07-08 12:39:38 +00:00
peter
911abb5abc + NEWINPUT for a better inputfile and scanner object 1998-07-07 11:19:50 +00:00
pierre
91130f7270 * 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)
1998-06-25 11:15:33 +00:00
florian
028721c4de * first version of rtti support 1998-06-25 08:48:04 +00:00
peter
804397de24 * ifdef newppu -> ifndef oldppu 1998-06-24 14:48:34 +00:00
peter
f07849effe * small os2 fixes
* fixed interdependent units with newppu (remake3 under linux works now)
1998-06-17 14:10:11 +00:00
peter
c2d5abdfed + targetcpu
* cleaner pmodules for newppu
1998-06-16 08:56:17 +00:00
peter
c614d62eaf * working browser and newppu
* some small fixes against crashes which occured in bp7 (but not in
    fpc?!)
1998-06-13 00:10:04 +00:00
peter
86e21aef48 * small fix to let newppu compile 1998-06-11 13:58:07 +00:00
pierre
5ad339b3d8 + 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
1998-06-09 16:01:33 +00:00
peter
f98459e1fb * smartlinking works for win32
* some defines to exclude some compiler parts
1998-06-08 22:59:41 +00:00
pierre
0e8616ed1f + 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)
1998-06-08 13:13:28 +00:00
peter
8201248b82 * some better uses clauses 1998-06-05 17:47:28 +00:00
pierre
1a44be1502 * fixes for inline for operators
* inline procedure more correctly restricted
1998-06-05 14:37:27 +00:00
peter
f66f837fc8 * m68k compiles
+ .def file creation moved to gendef.pas so it could also be used
    for win32
1998-06-04 23:51:26 +00:00
pierre
afe0d5a50d * demangled name of procsym reworked to become independant of the mangling scheme
Come test_funcret improvements (not yet working)S: ----------------------------------------------------------------------
1998-06-04 09:55:35 +00:00
peter
f29aaf6d8a + unlimited file support, release tempclose 1998-06-03 23:40:37 +00:00
peter
d6268ae22f + wordbool,longbool
* rename bis,von -> high,low
  * moved some systemunit loading/creating to psystem.pas
1998-06-03 22:48:50 +00:00
peter
f4db879aed * fixes for newppu, remake3 works now with it 1998-05-28 14:40:25 +00:00
peter
7b28ebd6ef * symtable.pas splitted into includefiles
* symtable adapted for $ifdef NEWPPU
1998-05-27 19:45:02 +00:00
peter
b3865ae063 + 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
1998-05-23 01:20:53 +00:00
pierre
c80de3be27 + 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
1998-05-20 09:42:32 +00:00
peter
4c96df6b43 * 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
1998-05-12 10:46:58 +00:00
peter
5e4c788be5 + $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
1998-05-11 13:07:53 +00:00
peter
499d54a9c0 * tai_section extended with code,data,bss sections and enumerated type
* ident 'compiled by FPC' moved to pmodules
  * small fix for smartlink
1998-05-06 18:36:53 +00:00
peter
94b52a3d7f + 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
1998-05-04 17:54:24 +00:00
florian
3233d4aeb7 * 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
1998-05-01 16:38:44 +00:00
pierre
a10c3e36bc * 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
1998-04-30 15:59:39 +00:00
pierre
5cdd60cac8 + 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
1998-04-29 10:33:40 +00:00
peter
6fd535b87d + new scanner
* $makelib -> if smartlink
  * small filename fixes pmodule.setfilename
  * moved import from files.pas -> import.pas
1998-04-27 23:10:27 +00:00
florian
c5932b0677 + exclude/include with constant second parameter added 1998-04-14 23:27:02 +00:00
peter
b7ff96bb48 * removed some Hints
* small speed optimization for AsmLn
1998-04-10 14:41:43 +00:00
daniel
3a646a9b73 * Fixed heap allocation for OS/2. 1998-04-03 09:51:00 +00:00
florian
8cd85667a7 * last changes before release:
- gdb fixed
     - ratti386 warning removed (about unset function result)
1998-03-30 15:53:01 +00:00
root
d1a1f501c8 Initial revision 1998-03-25 11:18:12 +00:00