Jonas Maebe
86f90d8ac1
+ support for setting the name of "main" (-XM command line parameter) in
...
the code using {$pascalmainname x} + storing it in the ppu file
(and give a warning if it's overridden multiple times + test)
git-svn-id: trunk@10406 -
2008-03-01 13:05:01 +00:00
florian
6c53785e3a
* first part of implements clean up and fixing
...
git-svn-id: trunk@10382 -
2008-02-24 11:05:46 +00:00
florian
d8d96f14e6
+ experimental directive, resolves #10833
...
git-svn-id: trunk@10331 -
2008-02-15 19:29:34 +00:00
peter
793fd8fc09
* Add -Xg to help pages
...
* -Xg now produces a .dbg file with debuginfo
that can be used by gdb. The main executable gets
a debuglink section that references the .dbg file.
git-svn-id: trunk@9778 -
2008-01-17 01:20:37 +00:00
florian
6843833d60
* regenerated
...
git-svn-id: trunk@9606 -
2008-01-01 11:07:42 +00:00
florian
8f17101039
* allow application of as operator only to interfaces having a guid, resolves #6797
...
git-svn-id: trunk@9436 -
2007-12-12 21:07:47 +00:00
Jonas Maebe
18eb495d0f
* give a regular error message instead of an internal error on x86
...
when using non-PIC references in assembler code when the compiler
is configured to generate PIC code (on ppc, sparc and arm, no
error message is given at all currently)
git-svn-id: trunk@9364 -
2007-12-01 11:28:15 +00:00
sekelsenmat
6569d491a1
Added symbian target to the compiler messages
...
git-svn-id: trunk@9149 -
2007-11-07 19:42:55 +00:00
florian
50cc61c8fd
* ignore register list in pure assembler routines, resolves #9335
...
git-svn-id: trunk@8978 -
2007-10-28 20:41:19 +00:00
peter
bfca4e67fa
* -CO option to check for possible integer overflows
...
git-svn-id: trunk@8842 -
2007-10-18 19:55:22 +00:00
peter
1e123d66ba
* improved generics
...
git-svn-id: trunk@8838 -
2007-10-18 00:24:05 +00:00
peter
6434772c3c
* error message when a goto label is optimized away
...
git-svn-id: trunk@8837 -
2007-10-17 21:52:25 +00:00
Jonas Maebe
83bab3b071
+ documented -XR in the help pages
...
* specified OSes to which -Xr applies
git-svn-id: trunk@8834 -
2007-10-17 19:37:32 +00:00
Jonas Maebe
288a538df5
* don't allow starting new virtual trees in TP-style objects + test
...
* fixed bug in whlpview.pas where such an new tree was unintentially
started
git-svn-id: trunk@8422 -
2007-09-09 14:58:55 +00:00
peter
4b5a599309
* remove -gg and -gd options
...
* minor capitalization fixes from bug #9640
git-svn-id: trunk@8420 -
2007-09-09 14:24:30 +00:00
Jonas Maebe
488cfa3c32
+ -go<x> switch for debugging options (some global switches could be
...
moved to it)
+ -go[no]dwarfsets switch to [disable]/enable generation of dwarf set
information, as this breaks gdb < 6.5 (used to be disabled in the
compiler by an ifdef, still off by default)
git-svn-id: trunk@8414 -
2007-09-09 09:27:49 +00:00
Jonas Maebe
91629f810f
* better error messages for non-overloadable operators:
...
* only suggest = if the user tried to overload <>
* suggest ** if the user tried to overload ^ (mantis #9606 )
* no suggestion otherwise
(instead of always suggesting '=')
git-svn-id: trunk@8402 -
2007-09-08 10:49:16 +00:00
Jonas Maebe
21abdd2f4e
+ support for specifying the minimal precision for floating point
...
constants. The default is currently 32 bits/single, which corresponds
to the old behaviour (constants which cannot be exactly represented
in the default/chosen precision will also still be automatically
upgraded to higher precision). Supported constructs:
* Command line switch -CF<x>
* Compiler directive {$MINFPCONSTPREC <x>}
whereby in both cases <x> can be default, 32 or 64. 80 is not supported
because there is no generic way to figure out whether the current target
actually supports 80 bit precision floating point calculations while
parsing the command line switches (pbestreal can still change in case of
win64 or -Cfsse2)
git-svn-id: trunk@8349 -
2007-09-01 19:38:27 +00:00
Jonas Maebe
84ddacd017
+ support for creating a bundle instead of a library on Darwin (-Wb)
...
git-svn-id: trunk@8217 -
2007-08-03 12:42:49 +00:00
Jonas Maebe
f1f1299e97
* generalised -W description to "target-specific options"
...
* mention for each -W option to which targets it applies
* show all available -W options for all target architectures they apply to
* reworded some option descriptions
* all option descriptions now start with a capital for consistency
git-svn-id: trunk@8216 -
2007-08-03 12:13:27 +00:00
Jonas Maebe
a3c9dc5ec6
+ support for {$linkframework x} to link to framework x (Darwin only)
...
+ support for {$frameworkpath x} and -Ffx to add x to the directories to
search for frameworks (Darwin only)
git-svn-id: trunk@8165 -
2007-07-25 15:42:30 +00:00
michael
bedf0151cc
* Implemented support for custom RC compiler and .RES linker
...
git-svn-id: trunk@8164 -
2007-07-25 12:06:57 +00:00
florian
5e60b52f28
* ignore pic directive/switch if the platform doesn't support pic, resolves #9281
...
git-svn-id: trunk@8157 -
2007-07-23 20:25:04 +00:00
peter
67e16340be
* revert r8118
...
git-svn-id: trunk@8139 -
2007-07-22 19:59:00 +00:00
daniel
21293f5818
+ Add common type integer promotion.
...
- {$intpromotion common_type} or -CIcommon_type switches to common type promotion.
- {$intpromotion native_integer} or -CIcommon_type switches to current behaviour.
- Default in tp mode is common_type, native_integer in other modes
- Compiler can cycle with -CIcommon_type
- Still needs checking on other architectures than i386
git-svn-id: trunk@8118 -
2007-07-21 19:16:24 +00:00
florian
fa2a2b0bd0
* generics without specialization can't be used as a type, resolves #9225
...
git-svn-id: trunk@8116 -
2007-07-21 17:39:49 +00:00
Jonas Maebe
c6ffa724f3
* clarified pointer->integer warning
...
git-svn-id: trunk@7907 -
2007-07-01 15:27:21 +00:00
daniel
4ea8448c6d
+ Warn when converting pointers to signed types.
...
git-svn-id: trunk@7884 -
2007-07-01 09:05:11 +00:00
daniel
45832d4314
+ New hint; for exmaple int64:=longint+longint says "Converting the operands to
...
int64 before addition could prevent an overflow error."
git-svn-id: trunk@7817 -
2007-06-26 07:52:04 +00:00
florian
078f6e05fa
* typos corrected
...
git-svn-id: trunk@7653 -
2007-06-13 20:49:09 +00:00
daniel
b15740c0e5
- Remove -Mgpc from command line options.
...
git-svn-id: trunk@7637 -
2007-06-13 06:13:51 +00:00
florian
c7100799ed
+ forbid usage of $E on targets supporting no fpu emulation
...
- disabled -Cfsoft on i386
git-svn-id: trunk@7625 -
2007-06-10 17:03:26 +00:00
Jonas Maebe
20b99dade3
- reverted r7600, see additional comments in mantis #9027
...
git-svn-id: trunk@7606 -
2007-06-09 17:14:28 +00:00
Jonas Maebe
5a8679131f
+ support for new/dispose with extra size parameter in macpas mode
...
(mantis #9027 )
git-svn-id: trunk@7600 -
2007-06-08 18:02:31 +00:00
florian
7b519c1ce3
* prevent usage of units being compiled with different fpu emulation state
...
git-svn-id: trunk@7501 -
2007-05-28 16:18:35 +00:00
peter
b29e4ad12f
* add used by unit to can't find unit message
...
git-svn-id: trunk@7430 -
2007-05-23 13:40:27 +00:00
florian
9f56a89617
+ added cyrillic code page tables
...
+ support -Fm<x> to load unicode tables from rtl/ucmaps, they must be in the same dir as the compiler though
git-svn-id: trunk@7420 -
2007-05-22 19:38:39 +00:00
Jonas Maebe
de1af478c3
* do not allow passing properties as var parameters (mantis #8777 )
...
* do not allow assignments to fields of structured properties (e.g.
property prop: trec read frec; ... instance.prop.frec.a:=5)
* clarified some related error messages
+ several extra tests for the above and related things
git-svn-id: trunk@7250 -
2007-05-03 14:08:03 +00:00
florian
2eb40fc025
* forbid file types as function results
...
git-svn-id: trunk@7180 -
2007-04-28 18:32:03 +00:00
Jonas Maebe
96d1a246ee
* fixed typos (MacOS -> Mac OS)
...
git-svn-id: trunk@6932 -
2007-03-19 13:45:16 +00:00
florian
63523e8a7f
* regenerated
...
git-svn-id: trunk@6863 -
2007-03-14 21:14:13 +00:00
florian
fd392dc2b6
* allow inherited; calling abstract methods in delphi mode, resolves #5896
...
git-svn-id: trunk@6651 -
2007-02-25 18:46:10 +00:00
peter
bb33395686
* support public also for initialized variables
...
git-svn-id: trunk@6650 -
2007-02-25 17:51:28 +00:00
florian
301be02148
* forbid anonymous generic specializations
...
git-svn-id: trunk@6627 -
2007-02-24 10:06:53 +00:00
Jonas Maebe
c0e9782da9
* regenerated message text files with new stabs disabling message
...
git-svn-id: trunk@6200 -
2007-01-26 12:44:05 +00:00
Jonas Maebe
c866400823
+ support for VMTOFFSET in assembler readers to get VMT offset of virtual
...
methods (mantis #8153 )
git-svn-id: trunk@6168 -
2007-01-24 18:26:23 +00:00
florian
ad7e261a04
* forbid to take the address of a label defined outside of the current procedure
...
git-svn-id: trunk@5974 -
2007-01-14 19:21:37 +00:00
Jonas Maebe
c0eb91ffc8
* fixed error message for trying to assign to formal parameters and
...
to open arrays (mantis #8111 )
git-svn-id: trunk@5950 -
2007-01-13 18:20:06 +00:00
florian
76dc5ab588
+ support of -fPIC (is equivalent to -Cg) so people won't be confused if ld tells them to recompile their code with -fPIC
...
git-svn-id: trunk@5934 -
2007-01-12 22:27:20 +00:00
florian
2ccba3604c
* fixed generation of constants containing a vmt
...
* better error message if such a construct is used in fpc where it isn't allowed
git-svn-id: trunk@5838 -
2007-01-07 10:39:06 +00:00
Jonas Maebe
efd1e86418
* give a verbose fatal error instead of an internalerror when a required
...
system unit type is not found
git-svn-id: trunk@5820 -
2007-01-05 19:43:28 +00:00
florian
a2ec2e72b6
* better hint about abstract methods (fixes 5098)
...
+ code generation for invoking dispinterface methods
* small dispinterface problems fixed
git-svn-id: trunk@5798 -
2007-01-03 19:14:31 +00:00
florian
c4d96ec538
* only non generic types can be used when specializing generics, fixes 7735
...
git-svn-id: trunk@5754 -
2006-12-30 21:51:24 +00:00
pierre
fc66d46beb
+ added several warnings about use of references
...
involving (%ebp) or (%esp) in assembler code.
Useful to track code that might suffer from regcall
convention.
git-svn-id: trunk@5736 -
2006-12-29 09:37:15 +00:00
Jonas Maebe
f308bfb45c
* fixed mantis 6686 ("function a;" without prior definition of "a"
...
accepted in Delphi mode + extra test case where something similar
has to succeed)
git-svn-id: trunk@5698 -
2006-12-24 10:48:49 +00:00
tom_at_work
949aa60805
* DWARF debug lineinfo reader
...
git-svn-id: trunk@5632 -
2006-12-17 23:11:25 +00:00
Jonas Maebe
9e60d6791d
* show name of procedure/function called with too few parameters
...
git-svn-id: trunk@5522 -
2006-12-01 20:15:57 +00:00
florian
d47dc38f2c
* ignore PIC directive on windows and warn about it
...
git-svn-id: trunk@5479 -
2006-11-25 22:58:52 +00:00
florian
43ba7cfe6f
* correct name of set packing directive is PACKSET
...
git-svn-id: trunk@5313 -
2006-11-10 19:56:19 +00:00
florian
667baf433d
+ new switch -CPSETALLOC=<y> to influence set sizes
...
git-svn-id: trunk@5299 -
2006-11-09 20:41:33 +00:00
florian
c947295cb8
+ ttertiarynode
...
* traise node refactored using tertiarynode
* more dipatch stuff
git-svn-id: trunk@5215 -
2006-11-03 23:03:31 +00:00
florian
4c76107b98
* limited generics to records, classes, objects and interfaces
...
git-svn-id: trunk@5171 -
2006-11-02 09:48:17 +00:00
florian
1275e7d109
* forbid usage of TYPE and VAR inside of common classes/objects
...
git-svn-id: trunk@5170 -
2006-11-02 09:12:59 +00:00
Jonas Maebe
36c6879581
+ -Sx command line switch to turn on exception keywords in non-Delphi/ObjFPC
...
modes (mainly for MacPas, to replace nested gotos with exceptions)
git-svn-id: trunk@4984 -
2006-10-20 12:54:47 +00:00
florian
9a1b9071a5
* implemented kylix like local directive, fixes #7242
...
git-svn-id: trunk@4982 -
2006-10-19 20:26:14 +00:00
Jonas Maebe
593f74d155
+ full support for varargs-related functionality for "mwpascal; external;"
...
functions
git-svn-id: trunk@4910 -
2006-10-14 17:56:42 +00:00
micha
dfd3b2503e
add message for {$T+} unportability
...
git-svn-id: trunk@4821 -
2006-10-07 19:21:32 +00:00
micha
a3c1250cd3
do not search for sources of released ppu files
...
git-svn-id: trunk@4818 -
2006-10-07 09:45:40 +00:00
peter
5de217f04c
* movzx reference size fallback to byte for delphi mode
...
git-svn-id: trunk@4768 -
2006-10-02 17:33:52 +00:00
florian
d4fa2100ce
* message files regenerated
...
git-svn-id: trunk@4739 -
2006-09-27 12:00:43 +00:00
florian
569c4871fc
+ first batch of varset support, as long as packset isn't changed, it doesn't change anything
...
git-svn-id: trunk@4710 -
2006-09-24 14:40:11 +00:00
Jonas Maebe
3a54183ce8
* clarified errors regarding invalid uses of packed array/record fields
...
git-svn-id: trunk@4577 -
2006-09-09 08:17:37 +00:00
peter
d1e7a68289
* include para number in call by var error
...
git-svn-id: trunk@4557 -
2006-09-04 21:14:22 +00:00
Jonas Maebe
1f42ee201b
+ support for bitpacked records, except for:
...
* rtti
* typed constants
git-svn-id: trunk@4489 -
2006-08-23 15:44:13 +00:00
Jonas Maebe
eccbc78e04
+ support for bitpacked arrays:
...
+ use {$bitpacking on/+} to change the meaning of "packed"
into "bitpacked" for arrays. This is the default for MacPas.
You can also define individual arrays as "bitpacked", but
this is not encouraged since this keyword is not known by
other compilers and therefore makes your code unportable.
+ pack(unpackedarray,index,packedarray) to pack
length(packedarray) elements starting at
unpackedarray[index] into packedarray.
+ unpack(packedarray,unpackedarray,index) to unpack
packedarray into unpackedarray, with the first
element being stored at unpackedarray[index]
* todo:
* "open packed arrays" and rtti for packed arrays are not
yet supported
* gdb does not properly support bitpacked arrays
git-svn-id: trunk@4449 -
2006-08-19 12:54:12 +00:00
Jonas Maebe
6fd4c50f0a
* give proper error message when upper or lower bound of array type is out
...
of range (bounds error instead of "upper bound lower than lower bound")
git-svn-id: trunk@4383 -
2006-08-07 14:42:21 +00:00
Jonas Maebe
5f699c7838
+ -gt, -gtt, -gttt and -gtttt switches to trash local variables with
...
different values (resp. $55, $AA, $EF and $00) in function/procedure
prologs to help find uninitialized uses. Should still be extended
for "out" parameters.
git-svn-id: trunk@4271 -
2006-07-20 22:54:23 +00:00
Jonas Maebe
73d5e259ef
* regenerated version (please always regenerate and commit these too
...
if you commit a new errore.msg, to avoid conflicts later)
git-svn-id: trunk@4270 -
2006-07-20 22:39:47 +00:00
florian
57f097a710
* made dir_warn code more clear, no implementation yet
...
git-svn-id: trunk@4200 -
2006-07-14 21:45:21 +00:00
Tomas Hajny
419ab6aeac
+ allow output of full version in QuickInfo
...
git-svn-id: trunk@4165 -
2006-07-13 23:06:46 +00:00
Tomas Hajny
db6bfea8ea
* spelling correction by Ido/ik
...
git-svn-id: trunk@4027 -
2006-06-30 21:29:52 +00:00
Tomas Hajny
ac692f7da9
* bugrep -> bugs
...
git-svn-id: trunk@3985 -
2006-06-27 22:10:55 +00:00
florian
dc2bef3875
+ implemented directives $setpeflags, $maxstacksize, $minstacksize and $imagebase, fixes #6349 and #6714
...
git-svn-id: trunk@3935 -
2006-06-25 10:22:42 +00:00
florian
d4848169e1
* as operator isn't allowed for non com interfaces
...
git-svn-id: trunk@3646 -
2006-05-23 18:52:56 +00:00
peter
4790838455
* add -Xi and -Xe
...
git-svn-id: trunk@3621 -
2006-05-21 20:18:50 +00:00
florian
c6787b52a7
+ compile the svn revision into the compiler, to do so, a file compiler/revision.inc must exist which is updated then
...
git-svn-id: trunk@3491 -
2006-05-13 15:25:36 +00:00
florian
06e7d4be7a
+ dispid parsing
...
git-svn-id: trunk@3378 -
2006-04-30 08:25:36 +00:00
Jonas Maebe
05540cad44
* give an error for {$calling } (i.e., when a procedure directive is
...
missing)
git-svn-id: trunk@3193 -
2006-04-12 07:58:25 +00:00
Tomas Hajny
c17b57db07
+ Statistics of warnings, hints and notes - (modified/fixed) patch from Naj Kejah, part of wishlist item 4897, plus hardcoded text moved to message file
...
git-svn-id: trunk@3181 -
2006-04-09 11:54:09 +00:00
Jonas Maebe
4db6e1ddb8
* moved type conversion of C varargs from tcallnode to
...
tarrayconstructornode.inset_typeconvs() and fixed them:
* integers < 32 bit are converted to 32 bit (this was previously
done in the code generator for some targets, and not for others)
* currency is also converted to double for targets where currency = int64
* single is converted to double, except for x86_64 (is at least
necessary on darwin/ppc, darwin/i386 and linux/i386)
* enums are converted to 32 bit ints
* procvars are converted to pointers
* proper errors are given for various unsupported types
NOTE: in C, floating point constants are by default double, while in
FPC they are of type extended. On platforms where extended <> double,
such constants when passed to C varargs are automatically converted
to double by default (gives warning). If you want to pass them as
single or extended or get rid of the warning, use an explicit typecast
* increased ppu version because of introduction of new node flag
(nf_cvarargs for tarrayconstructornode)
* fixed tests/test/cg/tprintf
* changed tests/test/cg/cdecl/taoc5 to use explicit typecasts for
floating point constants passed to C varargs functions.
git-svn-id: trunk@2949 -
2006-03-17 22:26:48 +00:00
peter
eb725d4e44
Merged revisions 2908,2911,2913-2917 via svnmerge from
...
http://svn.freepascal.org/svn/fpc/branches/linker/compiler
........
r2908 | peter | 2006-03-13 13:35:48 +0100 (Mon, 13 Mar 2006) | 2 lines
* merge trunk upto r2907
........
r2911 | peter | 2006-03-13 18:08:00 +0100 (Mon, 13 Mar 2006) | 2 lines
* rename values to make room for operand size codes
........
........
........
r2915 | peter | 2006-03-14 13:51:35 +0100 (Tue, 14 Mar 2006) | 2 lines
* check aktcputype
........
r2916 | peter | 2006-03-14 15:06:32 +0100 (Tue, 14 Mar 2006) | 3 lines
* merge 300 opcodes
* more 64bit versions of opcodes
........
r2917 | peter | 2006-03-14 17:34:03 +0100 (Tue, 14 Mar 2006) | 3 lines
* x86_64 tables
* convert movq with normal registers to mov
........
git-svn-id: trunk@2931 -
2006-03-16 08:09:28 +00:00
peter
2888a21593
* list supported optimization options in -i
...
* support $OPTIMIZATION and $O+
git-svn-id: trunk@2904 -
2006-03-13 11:17:56 +00:00
florian
5ece7cbc2f
* first part of x86-64 assembler
...
git-svn-id: trunk@2824 -
2006-03-09 22:05:16 +00:00
peter
785550d7e3
Merged revisions 2669,2673,2677,2683,2696,2699-2702,2704,2708,2712-2715,2718,2722-2723,2728-2730,2740,2769 via svnmerge from
...
svn+ssh://peter@www.freepascal.org/FPC/svn/fpc/branches/linker/compiler
........
r2669 | peter | 2006-02-23 09:31:21 +0100 (Thu, 23 Feb 2006) | 2 lines
* add compiler dir
........
r2673 | peter | 2006-02-23 17:08:56 +0100 (Thu, 23 Feb 2006) | 2 lines
* enabled more code
........
r2677 | peter | 2006-02-24 17:46:29 +0100 (Fri, 24 Feb 2006) | 2 lines
* pe stub and headers
........
r2683 | peter | 2006-02-25 23:13:24 +0100 (Sat, 25 Feb 2006) | 2 lines
* section options cleanup
........
r2696 | peter | 2006-02-26 20:27:41 +0100 (Sun, 26 Feb 2006) | 2 lines
* fixed typecasts
........
r2699 | peter | 2006-02-26 23:04:32 +0100 (Sun, 26 Feb 2006) | 2 lines
* simple linking works
........
r2700 | peter | 2006-02-27 09:44:50 +0100 (Mon, 27 Feb 2006) | 2 lines
* internal linker script
........
r2701 | peter | 2006-02-27 12:05:12 +0100 (Mon, 27 Feb 2006) | 2 lines
* make elf working again
........
r2702 | peter | 2006-02-27 14:04:43 +0100 (Mon, 27 Feb 2006) | 3 lines
* disable dwarf for smartlinking with .a
* fix section start in new .a file
........
r2704 | peter | 2006-02-27 18:30:43 +0100 (Mon, 27 Feb 2006) | 2 lines
* stab section fixes
........
r2708 | peter | 2006-02-28 19:29:17 +0100 (Tue, 28 Feb 2006) | 2 lines
* basic work to merge stabs sections
........
r2712 | peter | 2006-02-28 23:17:48 +0100 (Tue, 28 Feb 2006) | 2 lines
* unload tmodules before linking
........
r2713 | peter | 2006-02-28 23:18:51 +0100 (Tue, 28 Feb 2006) | 2 lines
* fixed stabs linking
........
r2714 | peter | 2006-02-28 23:19:19 +0100 (Tue, 28 Feb 2006) | 2 lines
* show code and data size
........
r2715 | peter | 2006-02-28 23:25:35 +0100 (Tue, 28 Feb 2006) | 2 lines
* unload .stabs from objdata after it is merged
........
r2718 | peter | 2006-03-01 12:24:38 +0100 (Wed, 01 Mar 2006) | 3 lines
* memsize/datasize cleanup
* check for exports/resources when adding module to linker
........
r2722 | peter | 2006-03-03 09:12:20 +0100 (Fri, 03 Mar 2006) | 2 lines
* new TObjSymbol splitted from TAsmSymbol
........
r2723 | peter | 2006-03-03 14:08:55 +0100 (Fri, 03 Mar 2006) | 2 lines
* coff fixes after recent objsymbol changes
........
r2728 | peter | 2006-03-03 22:43:04 +0100 (Fri, 03 Mar 2006) | 2 lines
* fixed coff writer
........
r2729 | peter | 2006-03-04 01:10:32 +0100 (Sat, 04 Mar 2006) | 2 lines
* fix read-only opening
........
r2730 | peter | 2006-03-04 01:11:16 +0100 (Sat, 04 Mar 2006) | 2 lines
* Read edata from DLLs, basic work
........
r2740 | peter | 2006-03-04 21:13:43 +0100 (Sat, 04 Mar 2006) | 3 lines
* deletedef added
* don't remove defs from index when we are already clearing everything
........
r2769 | peter | 2006-03-05 21:42:33 +0100 (Sun, 05 Mar 2006) | 4 lines
* moved TObj classes to ogbase
* ObjSection.SymbolRefs and SymbolDefines list
* DLL importing
........
git-svn-id: trunk@2771 -
2006-03-05 21:10:37 +00:00
Jonas Maebe
c15b500e32
+ warn if a static variable is read but not assigned (tw4781*)
...
git-svn-id: trunk@2472 -
2006-02-07 21:23:02 +00:00
Károly Balogh
cd38c236a0
+ made the compiler to know about PowerPC AmigaOS
...
git-svn-id: trunk@2201 -
2006-01-07 04:46:27 +00:00
Jonas Maebe
cbaa100654
* "fixed" web bugs 3183 and 4403 by breaking the parser in
...
Delphi mode so that you can change the return type of
overriding interface methods into anything you want.
You will get a nasty warning though.
git-svn-id: trunk@2168 -
2006-01-04 22:21:05 +00:00
florian
3ccec3fbdd
* proper error if a directory is passed as configuration file
...
git-svn-id: trunk@2134 -
2006-01-02 21:07:15 +00:00
Jonas Maebe
cd69c36f17
* commited -> committed (fix for web bug #4642 , by Vincent Snijders)
...
git-svn-id: trunk@2099 -
2005-12-31 17:30:22 +00:00
Jonas Maebe
021dabc37e
* also honour vsf_use_hints for uninitialised warnings for the
...
function result variable
git-svn-id: trunk@2052 -
2005-12-26 14:44:03 +00:00
florian
1e4e857719
* apptype causes only a note on system not supporting apptype
...
git-svn-id: trunk@1827 -
2005-11-26 21:54:15 +00:00
florian
4bd32a686d
* regenerated msg include files
...
git-svn-id: trunk@1647 -
2005-11-04 21:35:39 +00:00
florian
a068b7a059
* updated internal message files
...
git-svn-id: trunk@1562 -
2005-10-22 15:17:56 +00:00
florian
9a1c731bfb
+ basic dispinterface parsing stuff
...
git-svn-id: trunk@1445 -
2005-10-17 20:28:50 +00:00
florian
71b90d4d00
+ slice implemented
...
git-svn-id: trunk@1384 -
2005-10-15 16:48:27 +00:00
florian
1908ba2206
+ -vb: writes compiler messages with full path instead of the file name only
...
git-svn-id: trunk@1114 -
2005-09-18 18:09:19 +00:00
florian
21cc9597f2
+ fpcylix unit
...
+ -Sk option
git-svn-id: trunk@1106 -
2005-09-18 08:34:51 +00:00
florian
c7bdfe238b
* regenerated makefiles
...
git-svn-id: trunk@1039 -
2005-09-02 17:46:38 +00:00
florian
a53c9e2666
* fixed stupid copy/paste which turned softfloat always off
...
* fixed wince softfloat compiler proc. to be correctly named also when used outside the system unit
git-svn-id: trunk@966 -
2005-08-28 21:08:23 +00:00
florian
adb193497d
+ softfloat support for wince
...
* more units are build for wince
git-svn-id: trunk@959 -
2005-08-28 12:40:43 +00:00
florian
5e8db3eb5a
* better error message if a compiler can't find a compilerproc
...
git-svn-id: trunk@943 -
2005-08-25 20:21:06 +00:00
olle
e40c2fd8b0
+ compile time expression type checking
...
* fixed bug in $DEFINE under macpas
git-svn-id: trunk@919 -
2005-08-22 19:09:41 +00:00
florian
e36bb224ae
* typo fixed
...
git-svn-id: trunk@858 -
2005-08-13 21:36:50 +00:00
florian
9a624dd82f
* proper displaying of arm targets
...
git-svn-id: trunk@853 -
2005-08-13 16:57:06 +00:00
florian
469f2d1020
* windres isn't called anymore with an empty include parameter, fixes 4205
...
* -vd prints windres command line
git-svn-id: trunk@781 -
2005-08-02 21:05:36 +00:00
olle
438f229f52
* changed unknown align/enum warings into errors and also improved them
...
git-svn-id: trunk@582 -
2005-07-04 19:28:42 +00:00
florian
b9b9ce059d
* compilation errors fixed
...
git-svn-id: trunk@531 -
2005-06-29 19:35:05 +00:00
Jonas Maebe
43e4571fe9
+ help for -Xm and -XM (forgot to commit last time)
...
git-svn-id: trunk@513 -
2005-06-28 19:26:28 +00:00
florian
0772a35e70
+ description of -WB as option to create a relocatable image added, fixes bug #3965
...
git-svn-id: trunk@509 -
2005-06-26 21:28:01 +00:00
florian
11fe93f3b8
+ -Nu to help screen added
...
git-svn-id: trunk@452 -
2005-06-19 21:29:53 +00:00
florian
ec6d5ff211
+ utf-8 support for string constants added
...
git-svn-id: trunk@428 -
2005-06-16 20:16:37 +00:00
peter
bc347c23a8
* change error: compilation aborted to fatal
...
git-svn-id: trunk@394 -
2005-06-13 07:01:49 +00:00
florian
83fa3bd0cb
+ output of supported instruction sets in info page
2005-05-05 14:53:55 +00:00
peter
3f9d6ab32f
* add hint when passing an uninitialized variable to a var parameter
2005-03-25 22:20:18 +00:00
olle
7cb6368f12
* Support for pascal constant expr in compile time expr, is now only allowed in mode Delphi
...
+ Warning for undefined compile time var in mode macpas
* Support for some turbo directives in mode macpas
* Support for Metrowerks style DEFINED xxx
2005-03-20 18:13:34 +00:00
florian
c63ac52ac5
* fixed msg for -Xc
2005-02-26 17:50:37 +00:00
peter
c5488ea6b1
* -Fa option added, it'll load the units before the uses
...
line is parsed. Can be used to load cthreads from the commandline.
Example '-g -Faheaptrc,lineinfo' is the same as '-ghl'
2005-02-06 21:33:28 +00:00
peter
d3b559cfcc
* detect arithmetic overflows for constants at compile time
...
* use try..except instead of setjmp
2005-01-26 16:23:28 +00:00
peter
7848d612cd
* fixed -vv
2005-01-20 17:29:07 +00:00
peter
d5091e1817
* fix unreachable code check for repeat loop
2005-01-16 14:44:03 +00:00
olle
be08c4912b
- disabled macro diff message
2005-01-10 21:01:52 +00:00
olle
7572f3a539
* rework of macro subsystem
...
+ exportable macros for mode macpas
2005-01-09 20:24:43 +00:00
florian
5942e4b6f6
* added support of shifter ops in arm inline assembler
2005-01-05 15:22:39 +00:00
peter
0d4ba90aa8
* don't allow class methods in interfaces
2004-12-26 20:12:23 +00:00
peter
00c14e1083
* external is again allowed in implementation
2004-12-15 16:00:16 +00:00
florian
0037f4a199
* fixed operand size calculation for sse operands
...
+ all nasm assembler targets to help page output added
2004-12-12 10:50:34 +00:00
peter
9c0be16488
implicit load of variants unit
2004-12-06 19:23:05 +00:00
peter
14d25d278b
mangledname setting moved to place after the complete proc declaration is read
...
import generation moved to place where body is also parsed (still gives problems with win32)
2004-11-17 22:21:35 +00:00
peter
db81b4333a
* fatal error when procedure is too complex
2004-11-14 21:08:27 +00:00
peter
6c9c4c686c
* small m68k updates to bring it up2date
...
* give better error for external local variable
2004-11-09 22:32:59 +00:00
peter
bc59556a41
* $fpctarget expands to <cpu>-<os>
...
* allow * in middle of the path to support ../*/units/$fpctarget
2004-10-31 18:54:24 +00:00
peter
8706d9bec9
* help page updated
2004-10-25 15:37:50 +00:00
Tomas Hajny
5df0c00360
* better PathExists, fix for too long command line, correction of message
2004-09-21 23:33:43 +00:00
peter
67548d9f91
* for loop variable assignment is not allowed anymore
2004-09-13 20:28:26 +00:00
michael
ec7227e1f5
Regenerated
2004-09-08 11:58:14 +00:00
armin
354004d803
* target netwlibc added (libc is preferred for newer netware versions)
2004-09-04 21:18:47 +00:00
peter
db2ac3bc57
* allow only 1 default property
2004-08-25 15:57:04 +00:00
olle
f125ee32d1
+ added macro-lacks-content message
...
* fixed typos etc
2004-08-22 23:12:16 +00:00
florian
8cb7072e5f
* fixed several ie9999s when illegal operators were used
2004-08-08 15:22:29 +00:00
olle
ff36adb056
+ macpas style: exit, cycle, leave
...
+ macpas compiler directive: PUSH POP
2004-07-05 21:49:43 +00:00
florian
588e2c38bf
* dwarf branch merged
2004-06-16 20:07:06 +00:00
peter
9a0a2ccd81
* give error when goto jumps to label outside current proc scope
2004-05-23 11:39:37 +00:00
olle
9b3be3f760
* changed $mode mac to $mode macpas
...
+ added GUI apptype to MacOS
2004-05-11 18:23:44 +00:00
florian
e8098f6b71
+ added lib support for Amiga/MorphOS syscalls
2004-05-01 22:05:01 +00:00
florian
a7478ee97f
+ location support for arguments, currently PowerPC/MorphOS only
2004-04-18 15:22:24 +00:00
olle
46451e4662
+ added $APPTYPE TOOL for MPW tools on MacOS
2004-04-04 18:46:09 +00:00
peter
6b96b70118
* fixed operator overload allowing for pointer-string
...
* replaced some type_e_mismatch with more informational messages
2004-03-18 16:19:03 +00:00
peter
afcb1d6c14
* change error to warning
2004-03-04 17:25:55 +00:00
florian
61f15e4ec4
* make cycle fixed
...
+ pic support for darwin
+ support of importing vars from shared libs on darwin implemented
2004-03-02 17:32:12 +00:00
olle
4fecc1a56f
* big transformation of Tai_[const_]Symbol.Create[data]name*
2004-03-02 00:36:32 +00:00
Károly Balogh
4cf5269aa7
+ morphos target added
2004-02-24 17:16:39 +00:00
florian
1d8b4661b8
* message about illegal type conversion reports now the types
2004-02-21 16:03:10 +00:00
olle
4c95007b2b
* added target Darwin to help page
2004-02-19 13:43:50 +00:00
peter
d42f4af064
* give warning that DWORD is used as size in delphi mode when no
...
size was specified
2004-01-22 16:29:11 +00:00
florian
75e2de9f2c
+ reintroduce implemented
2004-01-21 14:22:00 +00:00
florian
dd8f11e8e1
* fixed ldm/stm arm assembler reading
...
* fixed a_load_reg_reg with OS_8 on ARM
* non supported calling conventions cause only a warning now
2003-12-08 17:43:57 +00:00
florian
1af574ceca
* assembler readers OOPed
...
+ typed currency constants
+ typed 128 bit float constants if the CPU supports it
2003-11-12 16:05:39 +00:00
florian
bbf7300a0c
* Florian's culmutative nr. 1; contains:
...
- invalid calling conventions for a certain cpu are rejected
- arm softfloat calling conventions
- -Sp for cpu dependend code generation
- several arm fixes
- remaining code for value open array paras on heap
2003-11-07 15:58:32 +00:00
peter
81449fa691
* constant expr expected
2003-10-07 17:52:50 +00:00
peter
e732233993
* invalid register message
2003-09-28 13:38:11 +00:00
olle
f891435ca0
+ added command line option for language mode -M<x>
...
+ helpinfo powerpc targets
2003-09-17 21:38:54 +00:00
florian
22f1ff8da4
* merged Wiktor's Watcom patches in 1.1
2003-09-05 17:41:12 +00:00
peter
09ed47cba6
* don't allow add/assignments for formaldef
...
* formaldef size changed to 0
2003-07-08 15:20:56 +00:00
peter
563e8d205f
* creating class with abstract call checking fixed
...
* there will be only one warning for each class, the methods
are listed as hint
2003-06-08 11:42:33 +00:00
peter
aaf6114364
* moved Comment calls to messge file
2003-05-25 10:27:12 +00:00
florian
91bbc7bea3
* error when address of an abstract method is taken
...
* fixed some x86-64 problems
* merged some more x86-64 and i386 code
2003-04-30 20:53:32 +00:00
peter
f3caa701d3
* regenerated
2003-03-30 19:03:59 +00:00
Tomas Hajny
8e7124f9f8
+ emx target added
2003-03-23 23:11:17 +00:00
peter
31cee7b219
* only allow class [procedure|function]
2003-03-19 17:34:04 +00:00
daniel
e8f649f5c2
+ $define newra will enable new register allocator
...
+ getregisterint will return imaginary registers with $newra
+ -sr switch added, will skip register allocation so you can see
the direct output of the code generator before register allocation
2003-03-08 08:59:07 +00:00
peter
2721d341f0
* merged some verbosity options.
...
* V_LineInfo is a verbosity flag to include line info
2003-01-09 21:52:37 +00:00
florian
07110d20f9
+ added proper support of type = type <type>; for simple types
2003-01-05 15:54:15 +00:00
peter
b44a8b42c8
* don't allow initialized threadvars
2002-12-27 15:22:20 +00:00
carl
081a4aab35
* 3% memory optimization
...
* changed some types
+ added type checking with different size for call node and for
parameters
2002-12-07 14:27:07 +00:00
peter
dc66eafb0b
* merged cdecl and array fixes
2002-12-06 17:51:09 +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
65988f5c09
* PPU checking errors for fpu emulation
2002-08-15 15:12:34 +00:00