Browse Source

Fixed a regression which made inlines uncompilable.

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
pull/1170/head
Dimitar Dobrev 7 years ago
parent
commit
38844e5e23
  1. 12
      src/Generator/Passes/SymbolsCodeGenerator.cs

12
src/Generator/Passes/SymbolsCodeGenerator.cs

@ -109,7 +109,7 @@ namespace CppSharp.Passes
p => cppTypePrinter.VisitParameter(p)))})"); p => cppTypePrinter.VisitParameter(p)))})");
WriteLine($": {@namespace}({@params}) {{}} }};"); WriteLine($": {@namespace}({@params}) {{}} }};");
Write($"extern \"C\" {{ void {wrapper}({signature}) "); Write($"extern \"C\" {{ void {wrapper}({signature}) ");
WriteLine($"{{ new (instance) {wrapper}{@namespace}({@params}); }} }}"); WriteLine($"{{ new ({Helpers.InstanceField}) {wrapper}{@namespace}({@params}); }} }}");
} }
else else
{ {
@ -118,7 +118,7 @@ namespace CppSharp.Passes
Write($@"{{ class {wrapper}{method.Namespace.Namespace.Name} : public { Write($@"{{ class {wrapper}{method.Namespace.Namespace.Name} : public {
method.Namespace.Namespace.Visit(cppTypePrinter)} "); method.Namespace.Namespace.Visit(cppTypePrinter)} ");
Write($"{{ void {wrapper}({signature}) "); Write($"{{ void {wrapper}({signature}) ");
Write($"{{ new (instance) {@namespace}({@params}); }} }}"); Write($"{{ new ({Helpers.InstanceField}) {@namespace}({@params}); }} }}");
if (method.Namespace.Access == AccessSpecifier.Protected) if (method.Namespace.Access == AccessSpecifier.Protected)
Write("; }"); Write("; }");
NewLine(); NewLine();
@ -161,13 +161,13 @@ namespace CppSharp.Passes
Write($"void {wrapper}"); Write($"void {wrapper}");
if (isProtected) if (isProtected)
Write("protected"); Write("protected");
Write($@"({@namespace}* instance) {{ instance->~{ Write($@"({@namespace}* {Helpers.InstanceField}) {{ {
method.Namespace.OriginalName}(); }} }}"); Helpers.InstanceField}->~{method.Namespace.OriginalName}(); }} }}");
if (isProtected) if (isProtected)
{ {
NewLine(); NewLine();
Write($@"void {wrapper}({@namespace} instance) {{ { Write($@"void {wrapper}({@namespace} {Helpers.InstanceField}) {{ {
wrapper}{@namespace}::{wrapper}protected(instance); }}"); wrapper}{@namespace}::{wrapper}protected({Helpers.InstanceField}); }}");
} }
if (method.Namespace.Access == AccessSpecifier.Protected) if (method.Namespace.Access == AccessSpecifier.Protected)
Write("; }"); Write("; }");

Loading…
Cancel
Save