Dimitar Dobrev
86bd7340e2
Fixed the parsing of fields with a template template parameter type.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
0c7031e951
Fixed the parsing of typedefs with the same name in different specialisations of a template.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
fa16cb9379
Removed several redundant type casts in the parser.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
3c82cf90c7
Fixed a bug - library dirs of modules were not read at all.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
f45fcc26a2
Fixed a bug in the parser thus removing the necessity for a hack we had.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
6abdb764e6
Completed the exposing of type aliases in our AST.
...
Fixes https://github.com/mono/CppSharp/issues/670 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
b4438b78c9
Restored the completion of member pointers when using the MS ABI.
...
The new Clang crashes without the completion.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
02c14e5e68
Partially handled MSVC system headers after VS 2015 Update 3.
...
The rest of the fix requires an update to Clang.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Joao Matos
8e703f7cb9
Handle type alias templates in TryGetClass.
10 years ago
Joao Matos
cfc9684ba6
Initialize TemplateArgument::Integral to 0.
10 years ago
Joao Matos
d6b21efe59
Ignore namespace alias when parsing declarations.
10 years ago
Dimitar Dobrev
f5689cff15
Moved the test for virtual bases to CSharp.h because of unrelated bugs in C++/CLI.
...
The bugs lead to uncompilable code and break the build. They have been reported at https://github.com/mono/CppSharp/issues/668 and https://github.com/mono/CppSharp/issues/669 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Joao Matos
7f75246215
Added support for C++11 type alias template declarations.
...
Partial fix for https://github.com/mono/CppSharp/issues/664 .
10 years ago
Joao Matos
afa12be715
Added support for C++11 type-alias type declarations.
...
In the future, we might want to add a TypeAliasDecl AST node,
but for now this simple approach is enough for typedef-like using declarations.
Won't be enough to support partial template using syntax (TypeAliasTemplateDecl).
Partial fix for https://github.com/mono/CppSharp/issues/664 .
10 years ago
Joao Matos
965129182d
Fixed parsing of classes with virtual bases.
...
This bug only manifested itself as an assert in debug builds.
Partial fix for https://github.com/mono/CppSharp/issues/664 .
10 years ago
Joao Matos
d4a2a7ea25
Fixed parsing of dependent member pointer types.
...
Partial fix for https://github.com/mono/CppSharp/issues/664 .
10 years ago
Dimitar Dobrev
517b1a5ccd
Saved the offsets per base in the layout of a record.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
c4c2ef21ce
Filled in all missing v-table pointers in record layouts.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
João Matos
dc8c560e5f
Merge pull request #658 from ddobrev/master
...
Properly fixed the offsets of fields in all possible cases
10 years ago
Dimitar Dobrev
e2b8f44565
Properly fixed the offsets of fields in all possible cases.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
e38ebdd55c
Introduced more proper const-ness to the parser.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
0af26773de
Simplified the walking of qualified types in the parser.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
733ea63925
Introduced proper const-ness to the parser.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
02ed084fd8
Added template specialisations to their lists before parsing their parameters.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
6a535e2dce
Clarified that the license of CppSharp is MIT.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
c1ee47d755
Changed the matching of explicitly patched virtual functions to use qualified names.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
f7707629ef
Fixed the getting of values mapped to enums, from pointers.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
d14ad944fc
Fixed the type map for an enum to also handle pointers.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
b3d46e38d7
Made wrappers of private classes public because of access by dependencies.
...
The correct way to fix this is, for C#, by using InternalsVisibleToAttribute.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
0c107a3bee
Fixed the comparison of template specialisation types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
6dadab3796
Fixed the generated code when a default argument uses a constant.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
0a7b396842
Fixed the generated code when the C++ parameters are named "arg1", "arg2", etc.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
27c612ecd0
Ignored abstract operators because they cannot be wrapped in Mono/.NET.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
2624c91e75
Fixed the comparison involving typedefs to use their real types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
bbb8aeb4af
Fixed the fully qualified names to include "global::" in the C# end.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
41c030a7ee
Cleared empty name-spaces up in the C# end.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
c88d0e077f
Removed modules with empty units after parsing.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
4617815d4b
Handled same named files at different paths when renaming root name-spaces.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
5987b5783e
Fixed a bug causing friend declarations to have their real declaration empty.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
89bb19d349
Checked if operators are ignored when complementing them.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
162d8ebb49
Added an option whether passes should visit parameters of events.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
8d2c5f49b5
Prevented changes in the casing of functions bearing the same name as their name-space.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
0798c5428c
Fixed a case of default arguments which use nullptr.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Joao Matos
7542f7c868
Extract method.TranslationUnit.Module expression into a local variable.
10 years ago
Joao Matos
f01c5b0fbe
Ignore system headers in DelegatesPass.VisitMethodDecl since they might not be part of a module.
10 years ago
Joao Matos
c62a547655
Fixed TranslationUnit.Module getter to gracefully handle non-existing modules.
10 years ago
Dimitar Dobrev
cdc51afc0e
Extended the parser and AST to handle template template parameters.
...
For more details see the Clang documentation ( http://clang.llvm.org/doxygen/classclang_1_1TemplateTemplateParmDecl.html ).
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
baf190a577
Collected all translation units before parsing them in depth.
...
This avoids overflowing the stack with large AST-s.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
546c32d4a7
Generated internals for template specialisations from dependent libraries.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
22ba637aec
Changed the tests for dependencies to use one combined AST.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago