Dimitar Dobrev
|
083dc3a9f8
|
Improved the generation of indexers by removing const overloads of []. NOTE: did that by removing the method type check in the pass for ambiguous overloads.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
54c93f4d91
|
Added support for read-only [] operators.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
triton
|
36226268a6
|
Fixed checking of virtual overrides to also check if the base override is ignored.
|
13 years ago |
triton
|
287dd7bf7c
|
Fixed getter/setter properties to inherit the access from their methods.
This is not ideal though, this won't deal properly with a getter and setter with different access specifiers.
|
13 years ago |
triton
|
8a1cb28cd0
|
Fixed resolving of incomplete enum declarations.
|
13 years ago |
triton
|
5abfbeca39
|
Ignore unresolved declarations.
|
13 years ago |
triton
|
86b6588951
|
Check for invalid virtual method overrides due to ignored base classes.
|
13 years ago |
Dimitar Dobrev
|
348c3db122
|
Fixed the v-table interop to be compilable.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
70b4cff9bf
|
Broke up the pass for inlines in two main functions.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
1532f7d0bf
|
Moved the changing of access modifiers of constructors of abstract classes to the pass for internal implementations of abstract classes.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
74ec730811
|
Some reordering of code and improved logging.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
faa32abe20
|
Ensured the directory to write the C++ file wrapping inlines, exists.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
453dc26964
|
Fixed the generation of complement operators.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
2848ee7453
|
Fixed a regression causing a run-time crash with moved operators.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
b92897c50e
|
Fixed the access of properties generated from fields.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
a3bc0491f9
|
Assumed types with empty names (that is, "struct { ... };") to be private.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
a15c5b8f99
|
Fixed the check for ignoring to verify the access at the declaration level.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
de8b3fc00e
|
Corrected the checks for private methods because overrides must be allowed through regardless of access.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
bb14da5a0c
|
Fixed the moving of operators to classes to discard the original name space and function.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
42a1af6503
|
Added a pass for generating wrapper code and definitions for inlines and an option for the name of the lib with inlines. Ignored non-tag indirect return types.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
1a33dc6964
|
Documented the addition of internal implementations to the respective unit.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
b9f1ecb715
|
Changed the parameter type comparer to work with qualified types because overriding cannot change the qualification of types.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
1c793ef589
|
Commented the pass about internal impls of abstract classes. Cosmetic fixes.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
7d3ee70a73
|
Renamed AbstractImplementationsPass to GeenrateAbstractImplementationsPass.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
9ef6fdc740
|
Separated the logic for abstracts impls into small functions.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
4cfcfa1b16
|
Corrected the implementation of abstract methods to properly handle classes, instance arguments and indirect return types.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
06e69225b9
|
Implemented the MS branch of the abstract implementations.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
a3869c95c5
|
Generated the proper return statements in the abstract implementations.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
6d2c0eaed8
|
Generated internal implementations of abstract classes in a new pass.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
triton
|
e0a2624370
|
Removed unused using.
|
13 years ago |
triton
|
871a05511c
|
Added a new pass that checks for ambiguous overloads.
|
13 years ago |
triton
|
caeb1d2f67
|
Added new pass CheckVirtualOverrideReturnCovariance that checks if a pair of return types in overriden methods are covariant according to the C++ standard.
|
13 years ago |
triton
|
458ef0ce34
|
Emit a debug info instead of an error for "invalid" operator overloads.
|
13 years ago |
Dimitar Dobrev
|
bb07a294f4
|
Ignored private types.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
3f7790c67d
|
Fixed the incorrect C++ in the tests for left shift operators. The test still fails, though, now C is always 0.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
triton
|
36d520562e
|
Use references instead of pointers when creating new operator overloads methods.
|
13 years ago |
triton
|
17fdab07cb
|
Only add missing operator overloads in C# generator.
|
13 years ago |
triton
|
13c5357e3f
|
Use references instead of pointers when creating new operator overloads methods.
|
13 years ago |
triton
|
f704ca3a05
|
Only add missing operator overloads in C# generator.
|
13 years ago |
Dimitar Dobrev
|
d9bc5bec86
|
Extended the check for duplicate names to ignore repeated operators since they cannot be renamed. Added an ignored test for an unrelated run-time issue.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
triton
|
dc14a5699a
|
Reworked the CheckAbiParameters pass to be a lot more accurate by re-using the previously added support for indirect type information.
|
13 years ago |
triton
|
c8abdeb192
|
Cleaned up operator overload helpers.
|
13 years ago |
triton
|
5ada754d72
|
Reworked MoveOperatorToClassPass to be simpler and correct.
|
13 years ago |
triton
|
a964df9069
|
Renamed HiddenStructureReturn to IndirectReturnType as it is a lot more clear.
|
13 years ago |
Dimitar Dobrev
|
5208fafef7
|
Moved GeneratedIdentifier to the base Generator so that the former is available to all back-ends.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
triton
|
b495c77a64
|
Set the driver property in TranslationUnitPass when adding new passes.
|
13 years ago |
triton
|
6b0cb59f8a
|
Added RunPasses to PassBuilder and change existing code to use it.
|
13 years ago |
Dimitar Dobrev
|
8bea49599a
|
Fixed the check for duplicate names to ignore hidden return parameters.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
4f1eba905f
|
Moved all operators not belonging to a type to the type of their first parameters.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |
Dimitar Dobrev
|
43d01854a2
|
Fixed a regression causing a crash as some functions with no symbols are allowed to reach code generation.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
|
13 years ago |