Commit Graph

274 Commits

Author SHA1 Message Date
carl
c15b93444a + added missing options 2002-04-14 13:05:26 +00:00
carl
eb09d6061c - remove go32v1 support 2002-03-28 20:46:44 +00:00
peter
bd6dcff932 * fixed Message4() 2002-03-01 12:41:40 +00:00
peter
9b385a2ab7 * regenated 2002-02-28 21:30:32 +00:00
Tomas Hajny
4148949871 * spelling correction (Data types which _require_) 2001-12-16 19:10:13 +00:00
Jonas Maebe
d117d71141 * typed constants that are "procedure of object" and which are assigned
nil require 8 bytes of "0" (not 4)
  * fixed web bug #1655 (reject the code)
2001-10-29 14:59:48 +00:00
peter
e37dbf904d * calling convention rewrite 2001-10-25 21:22:32 +00:00
peter
5f98096685 * give error with string constants longer than 255 chars, this is
compatible with kylix
2001-10-22 19:55:44 +00:00
peter
cb06c9bcb8 * array access for properties added 2001-10-21 12:33:05 +00:00
peter
17d6dded66 * interface 2 guid support
* guid constants support
2001-10-20 19:28:37 +00:00
Jonas Maebe
588c9858e0 * changed error message for explicit self parameter (it's allowed again
for normal procedures) (merged)
2001-10-01 13:54:55 +00:00
peter
45dab81414 * merged netbsd, fpu-overflow from fixes branch 2001-09-17 21:29:10 +00:00
Jonas Maebe
6a15178f0f * fixed web bug #1593
* writing of procvar headers is more complete (mention var/const/out for
    paras, add "of object" if applicable)
  + error if declaring explicit self para as var/const
  * fixed mangled name of procedures which contain an explicit self para
  * parsing para's should be slightly faster because mangled name of
    procedure is only updated once instead of after parsing each para
    (all merged from fixes)
2001-09-10 10:26:26 +00:00
peter
eb92d4bdd6 * check for size differences in typecasts when assigning 2001-09-02 21:13:31 +00:00
peter
ce43e79517 * detect duplicate labels 2001-08-30 19:43:50 +00:00
peter
fd8e5fa78c * palmos support from v10 merged 2001-08-19 11:22:22 +00:00
peter
634a68bf3e * merged netbsd start
* profile for win32
2001-08-07 18:47:12 +00:00
peter
e24474d9ac * -Ur switch (merged)
* masm fixes (merged)
  * quoted filenames for go32v2 and win32
2001-06-18 20:36:23 +00:00
peter
e652444594 + varargs directive 2001-06-04 11:53:12 +00:00
Jonas Maebe
34ef6cd933 + detect incomplete typed constant records 2001-05-06 17:15:00 +00:00
peter
79b1b63dcb * give error with local external procedure 2001-04-13 18:03:15 +00:00
peter
939f49375f * message loading fixes from Sergey (merged) 2001-03-13 20:59:56 +00:00
peter
e49f13a393 * press enter moved to errore.msg 2001-03-05 21:50:28 +00:00
peter
684970ea22 * merged generic m68k updates from fixes branch 2001-02-26 19:44:52 +00:00
peter
18a87e23d4 * new messages merged 2001-02-20 21:49:18 +00:00
Tomas Hajny
577ebe46a5 * mistyping correction (assemler) 2001-02-04 01:42:00 +00:00
Tomas Hajny
ee51dcc980 + APPTYPE support under OS/2, app_fs, GetEnvPChar for OS/2 2001-01-20 18:32:52 +00:00
peter
be95b0758b * object to class conversion
* more verbosity for -vt and -vd
  * -i options can be put after eachother so the Makefiles only need
    to call fpc once for all info (will be twice as the first one will
    be to check the version if fpc supports multiple info)
2000-12-23 19:46:49 +00:00
Jonas Maebe
12371eaa07 + warning when there is a chance to get a range check error because of
automatic type conversion to u32bit
2000-12-16 15:54:52 +00:00
Jonas Maebe
585b5f2e00 * fixed web bug #1144
+ implemented range checking for 64bit types
2000-12-11 19:10:19 +00:00
florian
ad8ccd0c0e *** empty log message *** 2000-11-19 16:23:06 +00:00
florian
e24f3f300e *** empty log message *** 2000-11-17 08:20:19 +00:00
florian
51527ba1c9 + merged Attila's changes for interfaces, not tested yet 2000-11-04 14:25:19 +00:00
Jonas Maebe
a4fde73649 + register renaming ("fixes" bug1088)
* changed command line options meanings for optimizer:
      O2 now means peepholopts, CSE and register renaming in 1 pass
      O3 is the same, but repeated until no further optimizations are
        possible or until 5 passes have been done (to avoid endless loops)
  * changed aopt386 so it does this looping
  * added some procedures from csopt386 to the interface because they're
    used by rropt386 as well
  * some changes to csopt386 and daopt386 so that newly added instructions
    by the CSE get optimizer info (they were simply skipped previously),
    this fixes some bugs
2000-10-24 10:40:52 +00:00
peter
4bd9325ae6 * more quotes 2000-10-15 09:07:41 +00:00
peter
092352b0fd * merged @result fix from Pierre 2000-10-08 10:26:33 +00:00
Jonas Maebe
45d4e0202a * fixed dupplicate message numbers (from Pierre's fix in the fixes
branch)
2000-09-28 09:10:47 +00:00
peter
24fc983597 * message updates merges 2000-09-24 21:33:46 +00:00
peter
a71e44ac49 * use defines.inc 2000-09-24 15:06:10 +00:00
florian
9c18ccb6e2 + netware target added 2000-09-11 17:12:29 +00:00
peter
c21d6d6871 * give fatal if objfpc/delphi mode things are found (merged) 2000-08-20 14:58:41 +00:00
peter
cb4de797c1 * class member decl wrong then no other error after it
* -vb has now also line numbering
  * -vb is also used for interface/implementation different decls and
    doesn't list the current function (merged)
2000-08-13 12:54:53 +00:00
michael
650fbb86aa + removed logs 2000-07-13 11:32:24 +00:00
peter
957d4cdc89 * new message files layout with msg numbers (but still no code to
show the number on the screen)
2000-06-30 20:23:33 +00:00
Tomas Hajny
c790e4afbe + $R support for OS/2 (EMX) added 2000-06-25 19:08:27 +00:00
pierre
a64310a252 + new warning for C packed records 2000-06-23 21:33:25 +00:00
peter
2b1d92cb5c * no binary value reading with % if not fpc mode
* extended illegal char message with the char itself (Delphi like)
2000-06-18 18:05:54 +00:00
peter
11e4a9a22d * added need_dollar msg 2000-06-14 19:04:09 +00:00
pierre
ef8abc1dd7 * operator overloading now uses isbinaryoperatoracceptable
and is unaryoperatoracceptable
2000-06-02 21:24:46 +00:00
peter
535f63923c * fixed % parsing and added modulo support
* changed some evaulator errors to more generic illegal expresion
2000-05-26 18:23:09 +00:00
pierre
947fa03cb0 + check of compatibility between selected assembler
output and target OS
2000-05-23 21:28:19 +00:00
pierre
d299af0815 + add a warning if using ENTER instruction with linux target 2000-05-17 11:08:24 +00:00
pierre
18073d8424 + FADD to FADDP conversion warning
+ MsgCrcValue added to msgidx.inc file
2000-05-15 14:02:31 +00:00
pierre
e0328653f1 + add a warning if a const string is longer than the
length of the string type
2000-05-11 09:15:12 +00:00
pierre
cd93ae3564 * some new messages 2000-05-09 10:58:09 +00:00
pierre
9560f264a3 + sym_n_unit_not_used 2000-04-26 07:32:02 +00:00
florian
3f9126f999 * fixed bug #903: the compiler gives now a nice message if it can't create
the .o file, (same for future .ar)
2000-04-02 15:22:17 +00:00
pierre
482820110c + add a warning if esi is base and index in object assembler code 2000-03-28 22:11:46 +00:00
pierre
9c44048ad2 + add error if trying to use readln or writeln for files
or read or write on untyped files.
    Reset and rewrite are still incompatible with BP
    (reset(dat,1); is allowed for typed file !)
2000-03-27 09:42:48 +00:00
pierre
0f4e1e10e0 * fix for bug #807 2000-03-16 16:41:11 +00:00
pierre
4177d64781 * fix for bug #848 (that still genrated wrong code)
+ better testing for variables used in assembler
    (gives an error if variable is not directly reachable !)
2000-03-15 23:09:58 +00:00
michael
34c8f49271 + Added switch to swicth on assertions. 2000-03-13 20:15:08 +00:00
peter
85087cf8c2 * -gl option added 2000-02-07 12:19:26 +00:00
florian
f6f3a1a039 *** empty log message *** 2000-02-06 17:17:03 +00:00
peter
0d63b79f38 * helpscreen updates 2000-01-27 09:58:59 +00:00
pierre
da01d99789 * Range check for int64 produces a warning only 2000-01-25 08:46:03 +00:00
florian
332c7a568f * CMOV support in optimizer (in define USECMOV)
+ start of support of exceptions in constructors
2000-01-23 21:29:14 +00:00
pierre
99d8f90aec + some warnings for wrong lines inside config files 2000-01-14 14:33:53 +00:00
pierre
640e444c7c * problems with -W options solved 2000-01-10 16:37:31 +00:00
peter
682d3453ee * copyright 2000 in logo 2000-01-07 00:21:44 +00:00
florian
89ccc81c2b + added compiler switch $maxfpuregisters
+ fixed a small problem in secondvecn
2000-01-04 15:15:50 +00:00
peter
7583de7a4f - removed freelabel()
* added undefined label detection in internal assembler, this prevents
    a lot of ld crashes and wrong .o files
  * .o files aren't written anymore if errors have occured
  * inlining of assembler labels is now correct
1999-12-22 01:01:45 +00:00
pierre
bed6bb6b2a + $description $version 1999-12-20 23:23:28 +00:00
florian
577edbbd3f + compiler checks now if a goto leaves an exception block 1999-12-14 09:58:41 +00:00
pierre
5169b7b86b + allow use of unit var in exports of DLL for win32
by using direct export writing by default instead of use of DEFFILE
    that does not allow assembler labels that do not
    start with an underscore.
    Use -WD to force use of Deffile for Win32 DLL
1999-12-08 10:39:59 +00:00
pierre
b528749138 * Notes/Hints for local syms changed to
Set_varstate function
1999-11-18 15:34:44 +00:00
pierre
62da9bd4c0 * Notes/hints changes 1999-11-17 17:04:58 +00:00
peter
918b5219ea * labels used but not defined give error instead of warning, the warning
is now only with declared but not defined and not used.
1999-11-15 22:00:46 +00:00
pierre
604766601d * Pavel's changes for reloc section in executable
+ warning that -g needs -WN under win32
1999-11-15 15:03:46 +00:00
peter
503d5a1cfa * const parameter is now checked
* better and generic check if a node can be used for assigning
  * export fixes
  * procvar equal works now (it never had worked at least from 0.99.8)
  * defcoll changed to linkedlist with pparaitem so it can easily be
    walked both directions
1999-10-26 12:30:40 +00:00
peter
8e7dd52200 * error when properties are passed to var parameters 1999-10-22 14:37:25 +00:00
florian
0dd2b51943 * problems with readln fixed: esi wasn't restored correctly when
reading ordinal fields of objects futher the register allocation
    didn't take care of the extra register when reading ordinal values
  * enumerations can now be used in constant indexes of properties
1999-10-21 16:41:37 +00:00
peter
fefc839b29 * redesigned linker object
+ library support for linux (only procedures can be exported)
1999-10-21 14:29:32 +00:00
peter
851ad1af06 * var must match exactly error msg extended with got and expected type
* array constructor type check now gives error on wrong types
1999-10-13 10:35:23 +00:00
florian
8b9633266b * new codegenerator compiles again 1999-10-12 21:20:41 +00:00
peter
532d85cd50 + procedure directive support in const declarations, fixes bug #232 1999-10-01 10:05:37 +00:00
peter
71f28ed588 * cs_create_smart instead of cs_smartlink
* -CX is create smartlink
  * -CD is create dynamic, but does nothing atm.
1999-09-20 16:38:51 +00:00
peter
7f63615b43 * @procvar fixes for tp mode
* @<id>:= gives now an error
1999-09-17 17:14:02 +00:00
peter
64dcafcf80 * updated 1999-09-16 13:35:56 +00:00
florian
863df30860 + rtti is now automatically generated for published classes, i.e.
they are handled like an implicit property
1999-09-15 22:09:15 +00:00
florian
02c2611b20 * bugs 593 and 607 fixed
* some other potential bugs with array constructors fixed
  * for classes compiled in $M+ and it's childs, the default access method
    is now published
  * fixed copyright message (it is now 1993-99)
1999-09-12 08:48:03 +00:00
florian
a9d8bfa1f7 * some bug fixes (e.g. must_be_valid and procinfo.funcret_is_valid)
* most things for stored properties fixed
1999-09-10 18:48:00 +00:00
peter
05f2be0455 * better support for object fields and more error checks for
field accesses which create buggy code
1999-09-08 16:04:01 +00:00
peter
453773ecb2 * TYPE support 1999-09-07 07:45:29 +00:00
peter
037319700d * moved parsing interface/implementation to -vu 1999-09-01 22:18:37 +00:00
pierre
55f6e70490 * double checksum problem solved 1999-08-27 14:52:56 +00:00
peter
3b89a3c501 * fixed message which was wrong styled 1999-08-06 11:13:17 +00:00
peter
cb8aeb3fd6 * 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
1999-08-05 16:52:53 +00:00
peter
771996a9db * always output preprocstack when unexpected eof is found
* fixed tp7/delphi skipuntildirective parsing
1999-07-29 11:43:15 +00:00
florian
9cbaac5beb * bugs 494-496 fixed 1999-07-26 09:41:59 +00:00