florian
f56c9c6855
* made resultype_char_to_char a little bit robuster
2001-05-13 15:43:46 +00:00
florian
05cfc07952
* some more support for widechars commited especially
...
regarding type casting and constants
2001-05-08 21:06:30 +00:00
florian
3c5793d8c6
* some Delphi incompatibilities fixed:
...
- out, dispose and new can be used as idenfiers now
- const p = apointerype(nil); is supported now
+ support for const p = apointertype(pointer(1234)); added
2001-05-04 15:52:03 +00:00
peter
a14d8618da
* remove wrongly placed first_call_helper
2001-04-13 22:20:58 +00:00
peter
a7cf57524e
* symtable change to classes
...
* range check generation and errors fixed, make cycle DEBUG=1 works
* memory leaks fixed
2001-04-13 01:22:06 +00:00
peter
759f678192
* move constant folding into det_resulttype
2001-04-04 22:42:39 +00:00
peter
4e2655cdc5
* resulttype rewrite
2001-04-02 21:20:29 +00:00
Jonas Maebe
044e307ab3
* fixed web bug #1430
2001-03-08 17:44:47 +00:00
Jonas Maebe
ee9ebaa3ee
* evaluate typecasts of const pointers to ordinals inline ('merged')
2001-02-21 11:49:50 +00:00
peter
211bd33dcb
* removed unused code
2001-02-20 18:37:10 +00:00
marco
69705d29e9
* Fix from Peter for passing a procedure of method to a other method in a method
2001-02-20 13:14:18 +00:00
Jonas Maebe
74c1d32ce9
* fixed web bug #1396 : tpointerord is now a cardinal instead of a longint,
...
but added a hack in ncnv so that pointer(-1) still works
2001-02-08 13:09:03 +00:00
Jonas Maebe
4c8ca9774f
+ implemented/fixed docompare() mathods for all nodes (not tested)
...
+ nopt.pas, nadd.pas, i386/n386opt.pas: optimized nodes for adding strings
and constant strings/chars together
* n386add.pas: don't copy temp strings (of size 256) to another temp string
when adding
2000-12-31 11:14:10 +00:00
Jonas Maebe
06603cf428
* fixed bug in sign extension patch
2000-12-08 12:41:01 +00:00
Jonas Maebe
c91a23c27d
* new constant handling: from now on, hex constants >$7fffffff are
...
parsed as unsigned constants (otherwise, $80000000 got sign extended
and became $ffffffff80000000), all constants in the longint range
become longints, all constants >$7fffffff and <=cardinal($ffffffff)
are cardinals and the rest are int64's.
* added lots of longint typecast to prevent range check errors in the
compiler and rtl
* type casts of symbolic ordinal constants are now preserved
* fixed bug where the original resulttype wasn't restored correctly
after doing a 64bit rangecheck
2000-12-07 17:19:42 +00:00
florian
b9796f6a7f
* unused units removed from uses clause
...
* some changes for widestrings
2000-11-29 00:30:30 +00:00
Jonas Maebe
8075e46f5d
+ allow evaluation of 64bit constant expressions at compile time
...
* disable range checking for explicit typecasts of constant expressions
2000-11-20 16:06:04 +00:00
florian
1462deb207
* interfaces are basically running
2000-11-12 23:24:10 +00:00
florian
51527ba1c9
+ merged Attila's changes for interfaces, not tested yet
2000-11-04 14:25:19 +00:00
peter
451723647e
* symtable splitted, no real code changes
2000-10-31 22:02:46 +00:00
peter
4b17f6f0ff
* fixed memory leaks
2000-10-14 21:52:54 +00:00
peter
e171f341a0
* moehrendorf oct 2000 rewrite
2000-10-14 10:14:45 +00:00
peter
38951f5ce1
* lot of compile updates for cg11
2000-10-01 19:48:23 +00:00
florian
57a566e53d
*** empty log message ***
2000-09-28 19:49:51 +00:00
florian
c284d15e57
* fixed a lot of syntax errors in the n*.pas stuff
2000-09-27 18:14:31 +00:00
florian
a32e181d77
* hmm, still a lot of work to get things compilable
2000-09-26 20:06:13 +00:00
florian
4d6f20c0d4
* more conversion work done
2000-09-26 14:59:34 +00:00
florian
df4eb26ed0
* more fixes
2000-09-25 15:37:14 +00:00