svenbarth
|
639a59df92
Added support for partial specialization. This should fix a few problems with generics, the tests for which will be added in the next days after I've verified them.
|
11 gadi atpakaļ |
Jonas Maebe
|
338c064beb
* moved x86-specific tpointerdef functionality to architecture-specific
|
11 gadi atpakaļ |
svenbarth
|
c077adf499
Fix for Mantis #25132
|
11 gadi atpakaļ |
svenbarth
|
798bb91e90
Extract tdef.is_related plus its overrides in tobjectdef, trecorddef and tstringdef into a new function def_is_related in unit defcmp.
|
11 gadi atpakaļ |
svenbarth
|
76f6de5cf1
Refactor tobjectdef.find_implemented_interface out into unit defcmp so that the recently introduced cycle between symdef and defcmp can be broken again.
|
11 gadi atpakaļ |
Jonas Maebe
|
de56f909d5
* synchronized with trunk up to and including r25430
|
12 gadi atpakaļ |
Jonas Maebe
|
f539e9158a
* small change to r24997: also use the {$modeswitch unicodestrings} state to
|
12 gadi atpakaļ |
paul
|
17ef986b17
compiler: don't treat methods without self node (static class methods, class contructors, destructors, operators) as method pointers, fix comparison of procdef and procvardef to allow assignment of a static class method to a regular procedural variable (issue #24486)
|
12 gadi atpakaļ |
Jonas Maebe
|
29132f45b7
* synchronised with trunk up to r25167 (fixes glib compilation via r25164,
|
12 gadi atpakaļ |
Jonas Maebe
|
35b771e421
* previously, we preferred pchar->shortstring to pchar->ansistring in
|
12 gadi atpakaļ |
Jonas Maebe
|
eb93429cf0
* prefer "constant string" -> pwidechar for {$modeswitch unicodestrings}
|
12 gadi atpakaļ |
nickysn
|
6431ebe7f3
* treat the nil node as equal to near, far and all the special x86 pointer types
|
12 gadi atpakaļ |
svenbarth
|
956b26bc97
Completely reworked implementation of generic constraints, by moving the generic constraint data from the symbols to the definitions (I originally thought that this would simplyfy things, but the more correct approach is to add it to the defs).
|
12 gadi atpakaļ |
svenbarth
|
cc5a108cca
Allocate the list for generic parameters in tstoreddef only on demand as most defs won't contain generic parameters anyway (avoids a little bit of runtime and memory overhead per def).
|
12 gadi atpakaļ |
nickysn
|
b0f7786782
+ added support for special versions of near data pointers associated with a x86 segment register. They are supported on all x86 platforms: i8086, i386 and x86_64
|
12 gadi atpakaļ |
Jonas Maebe
|
1244cdff70
* don't treat bitpacked arrays of subranges of char that can be represented
|
12 gadi atpakaļ |
svenbarth
|
9ef4a35a7b
Fix the fix for Mantis #21538. The check never really worked up to now...
|
12 gadi atpakaļ |
Jonas Maebe
|
c7255f153e
* sets with the same base/range can still have a different size (and hence
|
12 gadi atpakaļ |
svenbarth
|
2414c55ca0
Fix for Mantis #21538.
|
13 gadi atpakaļ |
Jonas Maebe
|
85765364ee
* properly compare parameter lists involving pointers to or classrefdefs of
|
13 gadi atpakaļ |
Jonas Maebe
|
4d31fbc31d
* also allow conversion of niln to forward-defined pointerdef
|
13 gadi atpakaļ |
Jonas Maebe
|
a63a603cc1
* allow conversion from niln to not-yet-fully-resolved classrefdefs
|
13 gadi atpakaļ |
Jonas Maebe
|
63ab1bae3e
* don't allow ordinal->ptr-based-objectdef conversions on managed platforms,
|
13 gadi atpakaļ |
Jonas Maebe
|
50659b7e7f
* give an error if a routine definition defines default values for
|
13 gadi atpakaļ |
Jonas Maebe
|
ffe68ca284
* do not search overloaded assignment/conversion operators for internal
|
13 gadi atpakaļ |
Jonas Maebe
|
99e70e7128
* do not allow implicit conversions from currency to orddef even if currency
|
13 gadi atpakaļ |
paul
|
1a724f3e11
compiler:
|
13 gadi atpakaļ |
paul
|
c7e057a835
compiler: use is_wide_or_unicode_string() istead of using is_widestring() or is_unicodestring()
|
13 gadi atpakaļ |
Jonas Maebe
|
564445da8c
* re-enabled enum -> dispinterface typecasts after r21069, bug noticed by
|
13 gadi atpakaļ |
Jonas Maebe
|
834026bfb5
* synchronised with trunk up to r21067
|
13 gadi atpakaļ |