peter
dc66eafb0b
* merged cdecl and array fixes
2002-12-06 17:51:09 +00:00
carl
d9c9277d32
* fix some errors
2002-12-02 19:38:06 +00:00
carl
2f89d59534
* warning of portabilitiy problems with parasize / localsize
2002-12-01 22:06:59 +00:00
carl
0fa2b27920
* updating of message files finihsed
...
(left to remove unused messages)
2002-11-30 23:15:56 +00:00
carl
f8d831d6ce
+ -Ce for softfpu
2002-11-30 21:29:56 +00:00
carl
5c5db0e0a3
+ unimplemented hint directive added
...
* hint directive parsing implemented
* warning on these directives
2002-11-29 22:31:19 +00:00
carl
5abec3d375
* warning / hint for possible loss of data in assignment
2002-11-29 20:02:42 +00:00
carl
4532dbd680
* updated notes and hints
2002-11-27 19:43:21 +00:00
carl
fdbae45a2c
+ hint for in operator with non byte sized operand
2002-11-26 21:52:37 +00:00
carl
b844e3e32b
* several mistakes fixed in message files
2002-11-25 21:05:51 +00:00
carl
6a52e7a9e5
- removed the invalid if <> checking (Delphi is strange on this)
...
+ implemented abstract warning on instance creation of class with
abstract methods.
* some error message cleanups
2002-11-25 18:43:31 +00:00
carl
60d17dbc01
* some small speed optimizations
...
+ added several new warnings/hints
2002-11-23 22:50:04 +00:00
carl
64655be168
* memory optimization (3-4%) : cleanup of tai fields,
...
cleanup of tdef and tsym fields.
* make it work for m68k
2002-11-17 16:31:55 +00:00
peter
bfd72ad5d5
* merged changes from 1.0.7 up to 04-11
...
- -V option for generating bug report tracing
- more tracing for option parsing
- errors for cdecl and high()
- win32 import stabs
- win32 records<=8 are returned in eax:edx (turned off by default)
- heaptrc update
- more info for temp management in .s file with EXTDEBUG
2002-11-15 01:58:45 +00:00
carl
5373203246
+ compile-time range checking for strings
2002-10-03 21:26:08 +00:00
peter
1258411f72
* moved comments about default parameters to msg file
2002-09-09 19:40:20 +00:00
carl
4207d5634f
* new message errors
2002-09-07 20:34:27 +00:00
carl
65988f5c09
* PPU checking errors for fpu emulation
2002-08-15 15:12:34 +00:00
florian
030eae46de
* a couple of interface related fixes
2002-08-09 07:33:01 +00:00
florian
4f7b35be5b
+ source code page support
2002-07-20 17:11:48 +00:00
Jonas Maebe
6b01278234
* fixed bug #1985
2002-06-10 13:41:26 +00:00
peter
4dcd96747e
* moved entry and exitcode to ncgutil and cgobj
...
* foreach gets extra argument for passing local data to the
iterator function
* -CR checks also class typecasts at runtime by changing them
into as
* fixed compiler to cycle with the -CR option
* fixed stabs with elf writer, finally the global variables can
be watched
* removed a lot of routines from cga unit and replaced them by
calls to cgobj
* u32bit-s32bit updates for and,or,xor nodes. When one element is
u32bit then the other is typecasted also to u32bit without giving
a rangecheck warning/error.
* fixed pascal calling method with reversing also the high tree in
the parast, detected by tcalcst3 test
2002-05-12 16:53:04 +00:00
peter
2dcf2ee940
* give error when using enums with jumps as array index
...
* allow char as enum value
2002-04-16 16:12:47 +00:00
peter
3bcfe33002
* fixed stackcheck that would be called recursively when a stack
...
error was found
* generic changeregsize(reg,size) for i386 register resizing
* removed some more routines from cga unit
* fixed returnvalue handling
* fixed default stacksize of linux and go32v2, 8kb was a bit small :-)
2002-04-15 19:44:18 +00:00
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
michael
f7284c4549
+ Improved resourcestring handling
1999-07-24 16:22:10 +00:00
florian
35f636dea1
+ resourcestring implemented
...
+ start of longstring support
1999-07-22 09:37:28 +00:00
florian
774df6096e
* bug #487 fixed, (inc(<property>) isn't allowed)
...
* more fixes to compile with Delphi
1999-07-18 14:47:19 +00:00
florian
b2c99ecb9d
+ implemented a better error message if a PPU file isn't found as suggested
...
by Lee John
1999-07-14 21:19:01 +00:00
peter
b867e4f6de
* assembler smartlink message
1999-07-10 10:12:03 +00:00
florian
62cb5453d3
* 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
1999-07-06 21:48:09 +00:00
peter
b4a852e74b
* merged
1999-07-05 20:22:08 +00:00
florian
c615fcdbbb
* int64/qword type release
...
+ lo/hi for int64/qword
1999-07-01 15:49:09 +00:00
florian
0fa46763ad
* qword division fixed
...
+ code for qword/int64 type casting added:
range checking isn't implemented yet
1999-06-28 22:29:10 +00:00
peter
03e6ec96c5
* merged
1999-06-14 17:47:45 +00:00
peter
9631bab859
*** empty log message ***
1999-06-11 11:44:56 +00:00
pierre
35777a48a1
types.pas
1999-06-02 22:25:22 +00:00
peter
94c276ce8d
* better checks for procvar and methodpointer
1999-06-01 19:27:47 +00:00
peter
0b272f13c7
* removed oldasm
...
* plabel -> pasmlabel
* -a switches to source writing automaticly
* assembler readers OOPed
* asmsymbol automaticly external
* jumptables and other label fixes for asm readers
1999-05-27 19:43:55 +00:00
florian
6b33f4d87d
* 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
1999-05-23 18:41:55 +00:00
florian
1316bbd21f
* tdef.typename: returns a now a proper type name for the most types
1999-05-19 16:48:21 +00:00
florian
41e4095cfa
* if a non local variables isn't initialized the compiler doesn't write
...
any longer "local var. seems not to be ..."
1999-05-19 15:26:32 +00:00
peter
e8bf496ae8
* containsself fixes
...
* checktypes()
1999-05-18 14:15:18 +00:00
peter
0fa3bc3618
* removed -Fg and -Up
1999-05-16 02:28:51 +00:00
peter
a47afc3857
* removed oldppu code
...
* warning if objpas is loaded from uses
* first things for new deref writing
1999-05-13 21:59:19 +00:00
florian
d8307b9cd3
* override isn't allowed in objects!
1999-05-12 22:36:04 +00:00
peter
02364c2124
+ hint where a duplicate sym is already defined
1999-05-09 12:46:19 +00:00
peter
9d4d785af3
* print also manglednames when changed
1999-05-08 15:26:11 +00:00
florian
a62eb5e144
* first fix for a problem with method pointer properties, still doesn't work
...
with WITH
1999-05-07 10:35:20 +00:00
peter
4841b4236c
* updated messages
1999-05-05 22:21:47 +00:00
florian
253ba04a57
* a delphi compiled compiler recompiles ppc
1999-05-05 10:05:48 +00:00