Browse Source

Export symbols for indirectly accessible constructors

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
pull/1535/head
Dimitar Dobrev 5 years ago
parent
commit
da7dd1b674
  1. 1
      src/Generator/Passes/GenerateSymbolsPass.cs
  2. 2
      src/Generator/Passes/SymbolsCodeGenerator.cs

1
src/Generator/Passes/GenerateSymbolsPass.cs

@ -115,7 +115,6 @@ namespace CppSharp.Passes @@ -115,7 +115,6 @@ namespace CppSharp.Passes
var method = function as Method;
bool isInImplicitSpecialization;
var declarationContext = function.Namespace;
var @class = declarationContext as Class;
do
{
isInImplicitSpecialization =

2
src/Generator/Passes/SymbolsCodeGenerator.cs

@ -158,7 +158,7 @@ namespace CppSharp.Passes @@ -158,7 +158,7 @@ namespace CppSharp.Passes
bool needSubclass = method.Access == AccessSpecifier.Protected || @class.IsAbstract;
if (needSubclass)
{
Write($"extern \"C\" void {wrapper}({signature}) ");
Write($"extern \"C\" {GetExporting()}void {wrapper}({signature}) ");
WriteLine($"{{ ::new ({Helpers.InstanceField}) {wrapper}{method.Namespace.Name}({@params}); }}");
}
else

Loading…
Cancel
Save