florian
2579cd139f
+ support for sets with size 1 and 2
...
git-svn-id: trunk@6172 -
2007-01-24 20:06:56 +00:00
pierre
eeb94bf9ea
* avoid level 2 comments
...
git-svn-id: trunk@6012 -
2007-01-17 05:37:15 +00:00
peter
91dbd27a42
* cleanup deleting of defs
...
git-svn-id: trunk@5902 -
2007-01-11 20:46:57 +00:00
peter
56379c37a9
* write vmt always according to the order of definitions
...
* remove obsolete lastvtableindex
git-svn-id: trunk@5811 -
2007-01-04 22:39:12 +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
2049837dd9
* dispinterfaces are publishable as well
...
git-svn-id: trunk@5773 -
2007-01-01 18:30:53 +00:00
Jonas Maebe
f6473ac074
* give more information about array types in error messages
...
(dynamic, open, const open array) (mantis 8021)
git-svn-id: trunk@5720 -
2006-12-26 17:19:00 +00:00
Jonas Maebe
26f81bfe08
* fixed arithmetic overflow when loading the recorddef of large
...
(> high(aint)/8 bytes) records from ppu files
git-svn-id: trunk@5595 -
2006-12-14 20:24:20 +00:00
Jonas Maebe
4dc98db426
* don't put classes/interfaces which need to be finalized in regvars
...
because the code generated by finalize_data_node() can't deal with that
(and it's called from gen_finalize_code() *after* the local symtable
of the current procedure has been allocated, and therefore the
make_not_regable() call of the generated addrnode doesn't do anything)
git-svn-id: trunk@5414 -
2006-11-17 12:06:20 +00:00
Károly Balogh
eb01d935d3
- typo fix
...
git-svn-id: trunk@5397 -
2006-11-15 23:10:49 +00:00
yury
d8d25c2489
* fixed memory leaks in compiler.
...
git-svn-id: trunk@5369 -
2006-11-14 09:32:58 +00:00
peter
9ae8e9fa21
* refactor tclassheader in tvmtbuilder and tvmtwriter
...
* fix rtti generation
* rtti is now written at the end of a module when all info is available,
this prevents some duplicate rtti entries cause by inheritance
git-svn-id: trunk@5363 -
2006-11-13 22:03:17 +00:00
peter
13f359aa80
* resultname changed to pshortstring
...
git-svn-id: trunk@5295 -
2006-11-09 07:43:13 +00:00
florian
7781e842fc
* varset support fixed
...
git-svn-id: trunk@5294 -
2006-11-08 22:48:44 +00:00
peter
e96b5f0152
* also use typename in rtti label for staticsymtable
...
git-svn-id: trunk@5291 -
2006-11-08 21:38:24 +00:00
florian
42a3ed4ac0
* copy savesize for procvardefs as well
...
git-svn-id: trunk@5282 -
2006-11-07 22:00:33 +00:00
florian
08f72e02f4
+ copying of procedure variable defs
...
git-svn-id: trunk@5277 -
2006-11-07 19:20:12 +00:00
florian
a13d358f1e
* first partially working implementation of variant com invoking
...
git-svn-id: trunk@5247 -
2006-11-05 15:34:15 +00:00
peter
3cae449fda
* moved rtti to ncgrtti
...
git-svn-id: trunk@5219 -
2006-11-04 10:43:27 +00:00
peter
658c46b903
* remove tdictionary and tindexarray
...
* symtables based on TFPHashObjectList and TFPObjectList
* rename torddef.typ to torddef.ordtype
* rename tfloatdef.typ to tfloatdef.floattype
* rename tdef.deftype to tdef.typ
* remove obsolete browser code, browcol is kept so the ide
can still be compiled
git-svn-id: trunk@5192 -
2006-11-03 00:30:30 +00:00
peter
136d3e8d46
* refactor implemented interfaces
...
git-svn-id: trunk@5134 -
2006-10-31 22:38:49 +00:00
peter
cb246eb781
* Remove dos,strings units, use SysUtils instead
...
* replace split* functions with Extract* functions
* Add Directory caching
git-svn-id: trunk@5102 -
2006-10-30 23:29:35 +00:00
florian
bce905b106
* give correct error locations for errors when specializing templates
...
* removed more germanisms
* better dumping of tokenbuf in ppudump
git-svn-id: trunk@5101 -
2006-10-30 23:28:06 +00:00
florian
ef7bd58c54
* germanism removed (aktfilepos -> current_filepos)
...
git-svn-id: trunk@5099 -
2006-10-30 22:37:31 +00:00
florian
85d63d9fa9
* settings refactored
...
git-svn-id: trunk@5094 -
2006-10-30 18:02:58 +00:00
peter
d27fda4b01
* fix rtti for overriden properties
...
git-svn-id: trunk@5079 -
2006-10-29 23:20:00 +00:00
peter
3078a1927f
* remove ttype
...
* rename old ttype variables *type to *def
* rename resulttypepass to pass_typecheck
* rename pass_2 to pass_generate_code
git-svn-id: trunk@5077 -
2006-10-29 22:19:39 +00:00
peter
d4d4309e44
* use unique symid and defid per module
...
git-svn-id: trunk@5061 -
2006-10-29 13:00:22 +00:00
florian
b64548e25c
* cleaned up unnecessary code
...
git-svn-id: trunk@5057 -
2006-10-29 12:36:50 +00:00
tom_at_work
bfa4fc30cd
* fix size calculation for packed arrays: it is not required to take alignment into account. Fixes tparray5 on 64 bit cpus
...
git-svn-id: trunk@5050 -
2006-10-28 22:27:57 +00:00
peter
0f6355e805
* fix property overriding
...
git-svn-id: trunk@5045 -
2006-10-28 20:35:53 +00:00
peter
8a0a27262e
* mark hidden parameters with < > when printing parameter lists, only used
...
in EXTDEBUG mode
git-svn-id: trunk@4734 -
2006-09-26 19:47: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
3bb41dcf9a
* fixed writing "packed" status of bitpacked records to ppu files.
...
Not sure how it ever worked, nor how exactly symtable ppu entries
work -- but it's now stored with the recorddef (which also means
that bitpacking is disabled currently for objects and classes,
since they are based on tabstractrecorddef rather than trecorddef)
git-svn-id: trunk@4679 -
2006-09-21 20:39:36 +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
37a9ce25d5
* fixed size of bitpacked arrays
...
git-svn-id: trunk@4488 -
2006-08-23 15:02:36 +00:00
florian
2228ec7fb0
* patch from C Western for #7232
...
git-svn-id: trunk@4481 -
2006-08-20 19:38:51 +00:00
florian
9e66674ff9
+ first part of qwordbool implementation
...
git-svn-id: trunk@4462 -
2006-08-19 23:16:17 +00:00
florian
22146e2bcf
* partial fix (not for 64 bit CPUs yet) for #5641 (tested only lower byte of result of object constructors)
...
git-svn-id: trunk@4455 -
2006-08-19 22:40:59 +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
peter
4506394cfa
* pass contextobjdef for visibility of methods. There are different
...
requirements for normal searching and for overloaded searching.
For overloaded searching we need to have the context of the
object where the overload is defined and not the current
module
git-svn-id: trunk@4391 -
2006-08-07 21:12:38 +00:00
peter
eb829ea21b
* store procdef messageinf in the ppu
...
git-svn-id: trunk@4386 -
2006-08-07 19:39:32 +00:00
chrivers
97e0ff4105
Added iioffset for _IMPLEMENTS. added iitype initializer
...
git-svn-id: trunk@4358 -
2006-08-06 00:50:06 +00:00
chrivers
d9eb4049e3
Added Interface implementation type specifier (var: iitype) to tobjectdef. Used for the implementation of "implements"-keyword
...
git-svn-id: trunk@4352 -
2006-08-05 20:05:40 +00:00
chrivers
aa783c2876
Cleanup for readability. timplementedinterfaces.searchintf() simplified, dummy-var renamed to mark it as such in tstoreddef.is_integrable
...
git-svn-id: trunk@4351 -
2006-08-05 20:04:55 +00:00
florian
887781a6b9
* experimental patch to fix #7187
...
git-svn-id: trunk@4281 -
2006-07-23 08:46:37 +00:00
Jonas Maebe
d75b19e484
* removed/conditionalised several unused variables
...
git-svn-id: trunk@4194 -
2006-07-14 19:44:54 +00:00
tom_at_work
f38dcb7145
* fixed wrong alignment on 64 bit cpus for rtti data for ordinals and enums if the cpu requires proper alignment
...
git-svn-id: trunk@3834 -
2006-06-09 21:01:57 +00:00
Jonas Maebe
e344ee3cd7
+ support for register variables which contain records
...
git-svn-id: trunk@3580 -
2006-05-19 15:49:07 +00:00
peter
36a57726ac
* always build deref info for localst
...
git-svn-id: trunk@3446 -
2006-05-07 09:01:21 +00:00