Jonas Maebe
615c450062
+ support for bitpacking types with a negative lower bound
...
git-svn-id: trunk@6683 -
2007-02-28 17:42:41 +00:00
florian
9a0f769b2f
* cleaned up set conversion
...
* fixed conversion of var sets
git-svn-id: trunk@6644 -
2007-02-25 16:29:39 +00:00
Jonas Maebe
f81303874f
* fixed the size of class instances (instance size instead of
...
sizeof(pointer))
* fixed the inheritance definition of classes (refer the
structural definition of the parent class rather than the
associated pointer type when indicating the inheritance)
git-svn-id: trunk@6543 -
2007-02-18 12:41:52 +00:00
florian
4575c9f424
* fixed alignment of dyn. arrays
...
git-svn-id: trunk@6458 -
2007-02-12 18:41:21 +00:00
Jonas Maebe
f38d29cfab
* optimized previous patch for "byte in set" (Thorsten Engler)
...
* fixed storing/loading of setdefs to/from ppu + test (Thorsten Engler)
* fixed ppudump for new setdef format in ppus
git-svn-id: trunk@6363 -
2007-02-07 20:22:29 +00:00
chrivers
0249f07fa9
* Renamed IIOffset to FieldOffset to avoid confusion with IOffset (TImplementedInterface)
...
git-svn-id: trunk@6219 -
2007-01-26 23:03:40 +00:00
tom_at_work
106fe68ce6
* renamed TStringList to TCmdStrList, in general use TCmdStr instead of shortstrings to fix bug #6351
...
git-svn-id: trunk@6215 -
2007-01-26 22:29:39 +00:00
chrivers
0e6348e7b7
* Renamed "fieldoffset" to "iioffset" to avoid confusion with fieldvarsym.fieldoffset
...
git-svn-id: trunk@6214 -
2007-01-26 22:11:39 +00:00
chrivers
cf04dc0fa1
* Moved iitype iioffset from tobjectdef to TImplementedInterface
...
git-svn-id: trunk@6211 -
2007-01-26 22:01:25 +00:00
ivost
c0e9be49b8
* fixed bug related to IMPLEMENTS keyword. The interface type was stored inside the interface defintion what was wrong! now it's set per TImplementedInterface$
...
* merged IOffset and EntryOffset of TInterfaceEntry. The meaning of IOffset depends now on IType
* to optimize: IOffset and FieldOffset of TImplementedInterface can be merged also! fpc still generate an interfacetable entry even for interfaces that aren't implemented in the current class (redirected by IMPLEMENTS keyword)
git-svn-id: trunk@6206 -
2007-01-26 20:58:46 +00:00
Jonas Maebe
d614eab0fb
* don't call afterconstruction/beforedestruction in case an exception
...
is raised in a constructor (mantis 8222)
git-svn-id: trunk@6202 -
2007-01-26 17:38:53 +00:00
florian
1d3a9cd87a
* fixing writing of setdefs
...
* fixed copying of setdefs
* increased ppu version
git-svn-id: trunk@6189 -
2007-01-25 19:29:54 +00:00
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