sergei
|
ad1621df3f
* Revert part of r22548, correct fix for the issue is provided by r23188.
|
12 ani în urmă |
florian
|
198907797b
* don't replace vmt entries of empty methods by FPC_EMPTYMETHOD
|
12 ani în urmă |
florian
|
24f518f232
+ redirect calls to empty virtual methods to FPC_EMPTYMETHOD
|
12 ani în urmă |
Jonas Maebe
|
4aa05f5133
+ support for automatically generating setters/getters for properties on the
|
12 ani în urmă |
pierre
|
78d31eb3cd
Add missing of pi_needs_got found by sparc compiler compiled with -dCHECK_PIC
|
13 ani în urmă |
Jonas Maebe
|
fe90823b01
* support the "overload" modifier for Objective-C methods
|
13 ani în urmă |
Jonas Maebe
|
c2be657671
* give an error instead of a note on the JVM target when overriding a
|
13 ani în urmă |
Jonas Maebe
|
50659b7e7f
* give an error if a routine definition defines default values for
|
13 ani în urmă |
Jonas Maebe
|
834026bfb5
* synchronised with trunk up to r21067
|
13 ani în urmă |
Jonas Maebe
|
6502717e67
* align all code/data sections to sizeof(pint), instead of sometimes
|
13 ani în urmă |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 ani în urmă |
sergei
|
429af6f40b
* nobj.pas, finished refactoring VMT generation code, now all child structures except RTTI are written to same data section with VMT itself and their labels are local (since child structures are accessible only through VMT, smartlinking them into different sections is useless).
|
13 ani în urmă |
sergei
|
3eeca2b172
* Emit published method table into single object section (previously every method name was written into a section of its own), labels for method names no longer have to be global.
|
13 ani în urmă |
sergei
|
3b006c4a9c
nobj.pas, cleanup/refactoring:
|
13 ani în urmă |
Jonas Maebe
|
3b47c40ed2
* check whether methods that implement interface methods are public
|
14 ani în urmă |
Jonas Maebe
|
c163a327d7
* fixed abstract method accounting for external Objective-C/Java classes:
|
14 ani în urmă |
Jonas Maebe
|
18310034d7
* never allow hiding an inherited virtual class method or virtual constructor
|
14 ani în urmă |
Jonas Maebe
|
ee75bfaaf4
* change non-virtual instance methods to "virtual; final;" methods on the
|
14 ani în urmă |
Jonas Maebe
|
7e7bdc3c55
* make the real name of methods implementing interface methods the same as
|
14 ani în urmă |
Jonas Maebe
|
586d4f4108
* fixed keeping track of the number of abstract methods in external classes
|
14 ani în urmă |
Jonas Maebe
|
6154f1b0d9
* keep track of the number of abstract methods per class via a counter
|
14 ani în urmă |
Jonas Maebe
|
d6a56cfda6
* change the realname of procsyms belonging to overriding methods to
|
14 ani în urmă |
Jonas Maebe
|
fc2d239f95
* fixed checking for missing "override" for Java code
|
14 ani în urmă |
Jonas Maebe
|
5f17c0e970
* do not check whether all interface methods are implemented in abstract
|
14 ani în urmă |
Jonas Maebe
|
28740dce2d
- removed extra "fordefinition" parameter again from tprocdef.mangledname(),
|
14 ani în urmă |
Jonas Maebe
|
83dc297346
+ Java interface support, mostly the same as Objective-C protocols
|
14 ani în urmă |
Jonas Maebe
|
0ee702b3a2
* tprocdef.mangledname now gets an extra boolean parameter indicating
|
14 ani în urmă |
sergei
|
25bf0012f2
* When the interface method mapping is present, being unable to find the implementing procedure using the mapped name is a error condition. No attempt to find implementing procedure using symbol name should be made in this case. Resolves #19591.
|
14 ani în urmă |
florian
|
589d061c3d
* when comparing overridden methods, ignore hidden parameters because overridden methods does not
|
14 ani în urmă |
sergei
|
7d99f95c45
* Always create a section before emitting data to current_asmdata.asmlists[al_typedconsts]. Without it, such data ends up in sections created elsewhere, creating very non-obvious dependencies on other parts of compiler.
|
14 ani în urmă |