Commit Graph

3145 Commits

Author SHA1 Message Date
Jonas Maebe
4f791d04b4 - removed all ifdef cardinalmulfix code 2000-12-16 15:56:18 +00:00
Jonas Maebe
e9544a1eb9 + warning when there is a chance to get a range check error because of
automatic type conversion to u32bit
  * arithmetic operations with a cardinal and a signed operand are carried
    out in 64bit when range checking is on ("merged" from fixes branch)
2000-12-16 15:55:32 +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
519abba1ff * 'resulttype of cardinal shl/shr x' is cardinal instead of longint 2000-12-16 15:54:01 +00:00
peter
21486921af * fixed parsing of strings and comments in skipuntildirective 2000-12-16 15:36:02 +00:00
Jonas Maebe
0a70f9b06e * only return int64's from functions if it int64funcresok is defined
+ added int64funcresok define to options.pas
2000-12-15 13:26:01 +00:00
michael
62950eb5c5 + Fix from Peter 2000-12-15 12:13:52 +00:00
peter
cf381a7f48 * clear usedasmsymbol at exit of writetree 2000-12-12 19:50:21 +00:00
peter
441e44a83d * fixed for win32 and go32v2 2000-12-12 19:49:41 +00:00
peter
5a1b6aa084 * fixed lost char after $I directive (merged) 2000-12-12 19:48:52 +00:00
Jonas Maebe
4b7aa484f1 * fixed range checking of cardinal constants
* fixed range checking of "qword constants" (they don't really exist,
    but values > high(int64) were set to zero if assigned to qword)
2000-12-11 19:13:54 +00:00
Jonas Maebe
585b5f2e00 * fixed web bug #1144
+ implemented range checking for 64bit types
2000-12-11 19:10:19 +00:00
peter
0bee4f7cb9 * fixed missing typecast 2000-12-10 20:25:32 +00:00
peter
f6eaa4c02b * allow subtypes for enums 2000-12-10 20:24:18 +00:00
florian
5d57010458 * fixed web bug #1203: class fields can be now redefined
in Delphi mode though I don't like this :/
2000-12-10 14:14:51 +00:00
florian
9e14dafee3 * helper name of val for qword fixed 2000-12-09 22:51:37 +00:00
florian
728caf4590 * web bug #1207 fixed: field and properties of const classes can be
changed
2000-12-09 13:04:05 +00:00
florian
a91a67f75b * AfterConstructor isn't called anymore when a constructor failed 2000-12-09 10:45:40 +00:00
Jonas Maebe
44b0e19ffe * fix for web bug #1245: arrays of char with size >255 are now passed to
overloaded procedures which expect ansistrings instead of shortstrings
    if possible
  * pointer to array of chars (when using $t+) are now also considered
    pchars
2000-12-08 14:06:11 +00:00
Jonas Maebe
06603cf428 * fixed bug in sign extension patch 2000-12-08 12:41:01 +00:00
Jonas Maebe
23401a6c23 + added note about rewritten const handing 2000-12-07 17:23:59 +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
Jonas Maebe
779e5fb7e9 * fixed webbug 1268 ("merged") 2000-12-05 15:19:50 +00:00
Jonas Maebe
a8af566cd7 + new integer regvar handling, should be much more efficient 2000-12-05 11:44:32 +00:00
Jonas Maebe
72bc010795 * when searching for constants in registers, the returned register
sometimes didn't have the same size as the requested size
2000-12-05 09:33:42 +00:00
Jonas Maebe
8e1fa5b1de * fixed bug where "shl $1,%reg" was changed to "leal (%reg),%reg2"
instread of to "leal (,%reg,2),%reg2"
2000-12-05 09:32:47 +00:00
Jonas Maebe
06af76dd6c * invalidate regs that depend on a modified register 2000-12-04 17:00:09 +00:00
florian
ec796cc40b * fixed web buzg 1275: problem with int64 functions results 2000-12-03 22:26:54 +00:00
florian
8dc8438e60 * if raw interfaces inherit from IUnknown they are ref. counted too 2000-11-30 23:12:57 +00:00
florian
9107f49c03 * opts386 renamed 2000-11-30 22:48:23 +00:00
florian
ac4bbd85f0 * renamed 2000-11-30 22:41:55 +00:00
florian
d1f882fd59 * moved to m68k 2000-11-30 22:22:50 +00:00
florian
83fb061681 * moved to i386 and m68k 2000-11-30 22:20:54 +00:00
florian
00a98196cc * moved to i386 2000-11-30 22:16:49 +00:00
peter
d93a445b58 * moved into m68k subdir 2000-11-30 20:30:33 +00:00
peter
bbe34f11f1 * merged fix for bug #1229 2000-11-30 20:27:51 +00:00
peter
d8d3c08e63 * moved to oldtests module 2000-11-29 23:09:09 +00:00
michael
f2ba7392fc + Fixes from peter for fpc.exe merged 2000-11-29 15:33:43 +00:00
florian
b9796f6a7f * unused units removed from uses clause
* some changes for widestrings
2000-11-29 00:30:30 +00:00
Jonas Maebe
359f502adc * fixed crash when trying to use an overloaded operator which is nowhere
defined
2000-11-28 17:14:33 +00:00
Jonas Maebe
3974b23c97 + support for optimizing simple sequences with div/idiv/mul opcodes 2000-11-28 16:32:11 +00:00
Jonas Maebe
c9e26189a2 * fixed operator overloading problems 2000-11-28 14:04:03 +00:00
pierre
319ddd55cb * stabs fixing 2000-11-28 00:28:06 +00:00
pierre
631a4cd660 + use int64tostr function for integer consts 2000-11-28 00:25:17 +00:00
pierre
9353c89710 + int64tostr function added 2000-11-28 00:17:43 +00:00
Jonas Maebe
587d9bb7cf * fix for web bug #1251 (example 1) 2000-11-27 15:47:19 +00:00
florian
6cacd92aff * pascal modifier in interfaces of units works now 2000-11-26 23:45:34 +00:00
florian
ea7ed6fd3b * fixed rtti for chars 2000-11-26 18:09:40 +00:00
Jonas Maebe
a4928640fc * fixed stupid bug in previous commit 2000-11-23 14:20:18 +00:00
Jonas Maebe
f88e80bced * fix for webbug 1066/1126 2000-11-23 13:26:33 +00:00