Browse Source

Fixed a bug with multiple inheritance and an indirect return type.

Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
pull/75/head
Dimitar Dobrev 12 years ago
parent
commit
159a65d6bb
  1. 3
      src/Generator/Generators/CSharp/CSharpTextTemplate.cs
  2. 1
      tests/CSharpTemp/CSharpTemp.h

3
src/Generator/Generators/CSharp/CSharpTextTemplate.cs

@ -1806,7 +1806,8 @@ namespace CppSharp.Generators.CSharp @@ -1806,7 +1806,8 @@ namespace CppSharp.Generators.CSharp
Class retClass = null;
hiddenParam.Type.Desugar().IsTagDecl(out retClass);
WriteLine("var {0} = new {1}.Internal();", GeneratedIdentifier("ret"), QualifiedIdentifier(retClass));
WriteLine("var {0} = new {1}.Internal();", GeneratedIdentifier("ret"),
QualifiedIdentifier(retClass.OriginalClass ?? retClass));
}
var names = new List<string>();

1
tests/CSharpTemp/CSharpTemp.h

@ -22,6 +22,7 @@ class DLL_API Qux @@ -22,6 +22,7 @@ class DLL_API Qux
{
public:
int farAwayFunc() const;
int array[3];
};
class DLL_API Bar : public Qux

Loading…
Cancel
Save