Граф коммитов

5514 Коммитов

Автор SHA1 Сообщение Дата
Dimitar Dobrev 365b8db71c Print C++ for some kinds of non-type template parameters
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-23 00:21:49 +02:00
Dimitar Dobrev da251d443b Always ignore functions returning unsupported specializations
In very complex headers with heavily typedef-ed returned specializations of templates with non-type template parameters the functions themselves can be visited before such templates - thus leaving such invalid functions as valid.
Unfortunately, such a complex interaction cannot be reproduced and therefore tested in a reasonable time-frame.

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-23 00:19:08 +02:00
Dimitar Dobrev 634c231853 Generate valid C# for unions in templates with non-type args
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-20 18:52:36 +02:00
Dimitar Dobrev 540c16576f Fix a test for the new msvc in vs 2022
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-19 00:59:28 +02:00
Dimitar Dobrev 3ae0fd0fd5 Match names of parameters in templates to their specializations
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-12 17:59:12 +02:00
Dimitar Dobrev 0214b6e1cc Work around adding an STD name-space to a custom header
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-12 10:24:23 +02:00
Dimitar Dobrev 0b8f252d1b Generate valid C# for fields with types system template specializations
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-11 23:20:56 +02:00
Dimitar Dobrev ad6557792f Simplify handling of initialisation of variables
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-06 11:13:21 +02:00
Dimitar Dobrev 3defc52121 Remove the badge for the unused github releases
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-05 23:45:31 +02:00
Dimitar Dobrev d9394cd5df Auto-link generated C++ with the new LLD Mach-O
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-05 13:00:24 +02:00
Dimitar Dobrev bde15287c5 Update LLVM and drop building its needless tools
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-05 13:00:12 +02:00
Dimitar Dobrev 7734beca95 Fix formatting of the list of excluded LLVM tools
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-11-04 22:20:40 +02:00
Dimitar Dobrev 132ed7e25b Generate valid C# for variables which use float
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-31 19:12:57 +02:00
Dimitar Dobrev ac5001ddca Generate valid C# for variables with > 1 arg
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-31 18:36:11 +02:00
Dimitar Dobrev 9a17dbee1b Generate valid C++ for variadic functions
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-30 23:42:36 +03:00
Dimitar Dobrev 5e328da9e7 Fix C# layouts for classes with nameless unions
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-30 22:56:42 +03:00
Dimitar Dobrev 5a21a7facd Generate valid C# for copy ctors with extra args
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-30 20:19:05 +03:00
Dimitar Dobrev 50cba5552c Generate valid C# for destructors of templates with dependent fields
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-30 01:46:51 +03:00
Dimitar Dobrev ac8bbee379 Don't generate or move ignored specializations
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-30 00:51:18 +03:00
Dimitar Dobrev a2aeaed92a Rename templates only used through aliases
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-29 22:56:14 +03:00
Dimitar Dobrev 09190268bc Generate valid C# for internal fields of type external specialization
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-29 19:34:54 +03:00
Dimitar Dobrev c8c415b977 Generate valid C# for static object-typed fields
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-29 16:14:20 +03:00
Dimitar Dobrev 12f456e4c4 Trim specializations only used in ignored types
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-28 01:31:52 +03:00
Dimitar Dobrev 4be38086e0 Update NuGet dependencies
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-24 13:05:42 +03:00
Dimitar Dobrev 2da9e49fe8 Instantiate specialized classes nested in templates
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-22 17:53:48 +03:00
Dimitar Dobrev eca0db1765 Generate valid C++ for protected inline functions
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-17 13:29:13 +03:00
Dimitar Dobrev 4397cae7b2 Generate valid C++ for parameters by value
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-17 13:16:11 +03:00
Dimitar Dobrev 722a1d735d Generate valid C++ for conversion operators in name-spaced classes
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-17 02:13:30 +03:00
Dimitar Dobrev d9a429026e Restore auto-building of NuGet-s
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-12 13:26:41 +03:00
Dimitar Dobrev be6ca52447 Document release 1.0
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-12 13:10:37 +03:00
Dimitar Dobrev 3aab30f572 Add built-in compilation of extra symbols
Fixes https://github.com/mono/CppSharp/issues/1456 and https://github.com/mono/CppSharp/issues/1253.

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-11 18:57:33 +03:00
Dimitar Dobrev 1e60113327 Fix naming for function pointers with strings
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-07 00:23:24 +03:00
Dimitar Dobrev f97ad43ce4 Generate valid C# for base types with public fields of const char*
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-07 00:12:58 +03:00
Dimitar Dobrev 0d8b236f7e Ignore external (no module) translation units
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-02 21:55:00 +03:00
Dimitar Dobrev 851ec5e44c Fix instantiation of specializations not to crash
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-10-02 16:14:25 +03:00
Dimitar Dobrev 0e963aa03f Generate valid C# for default args: typedefed refs to enums assigned empty ctors
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-30 17:53:34 +03:00
Dimitar Dobrev 15a55483ff Extend finding of functions to also get overloads
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-29 23:08:32 +03:00
Dimitar Dobrev 385c5e9387 Ensure valid C# for default args assigned secondary bases
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-28 23:57:47 +03:00
Dimitar Dobrev 49122e0d62 Generate valid C++ for protected ctors of pure classes
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-28 23:03:11 +03:00
Dimitar Dobrev 42f38ec99e Generate valid C# for constants in namespaceless modules
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-28 00:28:01 +03:00
Dimitar Dobrev 9c52adae09 Generate valid C# for types nested in external typedef-ed specializations
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-27 21:32:58 +03:00
Dimitar Dobrev f5bed3223d Generate valid C# with explicit external specializations
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-25 15:43:42 +03:00
Dimitar Dobrev 4649052f2c Fix templated indexers returning objects
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-21 22:52:26 +03:00
Dimitar Dobrev 6dfabb6273 Generate valid C# for specializations in default args
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-19 23:45:57 +03:00
Dimitar Dobrev 8a75cee99f Generate valid C++ for pure implemented dtors
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-19 02:00:08 +03:00
Dimitar Dobrev 50feab050f Free returned by value instances, not object ones
This was a dangerous bug by as the object remained in a deleted state to be used later.

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-18 23:30:01 +03:00
Dimitar Dobrev e2d0dce8ba Generate valid C# for forwarded specializations
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-09-18 21:27:46 +03:00
Dimitar Dobrev c36145b29d Bind default constructors with dependent pointers
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-08-31 22:53:06 +03:00
Dimitar Dobrev 2fdd0822d2 Generate valid C# for setters returning Booleans
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-08-30 14:24:56 +03:00
Dimitar Dobrev 8803ede83d Place returns as needed without an extra block
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
2021-08-30 13:59:28 +03:00