Joao Matos
80a83ceada
Be more strict when constructing a regex for parsing macros.
5 years ago
Joao Matos
9890bc92fc
Handle enum items in rename pass.
5 years ago
Joao Matos
503aad6c7a
Fix code to use BaseClass property instead of first base.
...
The first base could be ignored, BaseClass does the right thing.
5 years ago
Joao Matos
643639d163
Add initial implementation of declaration maps.
5 years ago
josetr
777f011ac7
Prevent projects from picking up obj files that are generated sometimes ( #1508 )
5 years ago
Dimitar Dobrev
7d2d8f291e
Revert "Generate code from tests where libraries appear"
...
This reverts commit fa47194dae
.
# Conflicts:
# build/Tests.lua
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
c7fb59769f
Fix all of our warnings in the parser
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
0fd4307b81
Generate C++ for constructors of abstract types
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
josetr
a99c2497d0
CI: Skip building CppSharp.Parser.CLI because its slow to do so and its not needed ( #1502 )
5 years ago
josetr
3e4b43c760
Use correct C# parser bindings for windows x64 ( #1501 )
5 years ago
Dimitar Dobrev
fa47194dae
Generate code from tests where libraries appear
...
This is necessary in order to easily find the compiled symbols as dependencies and target of platform invocation.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
josetr
42dda6b12f
Fix generation of SequentialLayout structures ( #1499 )
5 years ago
josetr
4cf8299564
Update parser bindings. ( #1497 )
5 years ago
josetr
20dbda0405
Fix CS0162 warning about unreachable code ( #1492 )
5 years ago
josetr
838c2c5930
Fix CS0109 warnings about new keyword not being required. ( #1493 )
5 years ago
josetr
2e80565bb2
Fix warnings about unnecessary using directives. ( #1489 )
5 years ago
josetr
cb7e35dfa1
Avoid generating an interface with a Dispose method if we already inherit from IDisposable. ( #1486 )
5 years ago
Dimitar Dobrev
927c2a5c18
Fix finding of symbols for members of templates
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
josetr
f9af20f19f
Always ignore warnings about missing PDB files
5 years ago
Dimitar Dobrev
2c6c2da690
Mark variables with constant expressions as found
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
b6811060ab
Make the CPP ABI visible only to the STD symbols
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
257b347fbd
Regenerate the parser bindings
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
68146058f3
Generate valid C++ for destructors of nested types
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
341fadc655
Always use the mangled names as reported by Clang
...
The names in the binaries themselves are sometimes different than those Clang reports. However, it seems that the reported ones are the actually correct for invocation. For example, the name passed to dlsym() (for variables) must not be prepended with an underscore (https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man3/dlsym.3.html ). Another example, again on macOS, is with extern C functions which sometimes also receive an _ at the front.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
60474c922c
Call the destructor instead of deleting the object in the generated symbols
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
josetr
06cdad54db
Regenerate the parser bindings with sequential layouts ( #1479 )
5 years ago
josetr
bd69624a7d
Remove dummy variable and use discards instead available since C# 7.0 ( #1478 )
5 years ago
josetr
7791cf6996
Fallback to LayoutKind.Explicit when a custom alignment is specified. ( #1476 )
5 years ago
josetr
6063a3cd84
Update bindings ( #1477 )
5 years ago
josetr
051ebb82b3
Remove `Layout.GetSize()` method as it's no longer relevant ( #1474 )
5 years ago
josetr
3e742c3219
Fix `String.CSharpSignatureType` returning incorrect type when the given type is a pointer or a reference. ( #1473 )
5 years ago
Dimitar Dobrev
d3135664ca
Expose if a variable is a constant expression
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
josetr
0d32121eee
Fix the generation of sequential layouts
5 years ago
josetr
75c0fbcbdf
Simplify the marshalling of returned pointers ( #1470 )
5 years ago
josetr
5912c236ec
VTable: improve codegen & make it thread safe ( #1469 )
5 years ago
josetr
52140cb78b
Create VTables class to cache delegates pointing to native virtual methods ( #1468 )
5 years ago
josetr
3674e123ec
Improve UTF32Marshaller performance ( #1467 )
5 years ago
josetr
eac78c6caf
Improve generation of C# ( #1466 )
5 years ago
josetr
b9cf8f160a
Reduce calls to ConcurrentDictionary to improve performance ( #1464 )
5 years ago
josetr
9b8275cca9
Ensure expression is a valid float constant before trying to append `f` suffix ( #1465 )
5 years ago
Dimitar Dobrev
75bca17907
Update LLVM to obtain working lld ( #1462 )
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
63459534f9
Update the kind of completed specializations ( #1460 )
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
c0d5867ffe
Enable linking groups for the parser on Linux
...
The previous fix didn't work at all because premake's syntax is extremely strange at best and without any sense whatsoever it completely failed before I moved the linking groups just a few lines up.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
josetr
e6813a2f99
Update Bindings ( #1459 )
5 years ago
josetr
e61e9201ec
Fix ambiguous conversion functions ( #1458 )
5 years ago
Dimitar Dobrev
bd779b2c49
Enable linking groups for the parser on Linux
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
josetr
c32ac59988
Prevent string destructor from being called twice when its passed by value ( #1455 )
5 years ago
josetr
8c4465bb11
Fix PInvokeStackImbalance when calling C++ methods ( #1453 )
...
* Fix PInvokeStackImbalance when calling C++ methods
5 years ago
josetr
69a501b91c
Load symbols at startup to avoid very expensive ResolveSymbol calls everywhere ( #1447 )
...
* Load symbols at startup to avoid very expensive ResolveSymbol calls everywhere
5 years ago
josetr
832e4e9eb0
Fix IntPtr array marshalling bug and move hard to read code to CppSharp.Runtime ( #1446 )
5 years ago