diff --git a/src/Generator/Generators/CLI/CLITypePrinter.cs b/src/Generator/Generators/CLI/CLITypePrinter.cs index 9ae9b9fe..24c053ff 100644 --- a/src/Generator/Generators/CLI/CLITypePrinter.cs +++ b/src/Generator/Generators/CLI/CLITypePrinter.cs @@ -94,15 +94,15 @@ namespace Cxxi.Generators.CLI return string.Format("{0}^", function.Visit(this, quals)); } - if (pointee.IsPrimitiveType(PrimitiveType.Void, walkTypedefs: true) || - pointee.IsPrimitiveType(PrimitiveType.UInt8, walkTypedefs: true)) + if (pointee.IsPrimitiveType(PrimitiveType.Char) && quals.IsConst) { - return "System::IntPtr"; + return "System::String^"; } - if (pointee.IsPrimitiveType(PrimitiveType.Char) && quals.IsConst) + PrimitiveType primitive; + if (pointee.IsPrimitiveType(out primitive, walkTypedefs: true)) { - return "System::String^"; + return "System::IntPtr"; } return pointee.Visit(this, quals);