diff --git a/src/Generator/Generators/CSharp/CSharpTypePrinter.cs b/src/Generator/Generators/CSharp/CSharpTypePrinter.cs index 6191ccde..72711795 100644 --- a/src/Generator/Generators/CSharp/CSharpTypePrinter.cs +++ b/src/Generator/Generators/CSharp/CSharpTypePrinter.cs @@ -124,6 +124,13 @@ namespace CppSharp.Generators.CSharp return $"{prefix}string[]"; } + if (arrayType.IsPrimitiveType(PrimitiveType.Bool)) + { + var prefix = ContextKind == TypePrinterContextKind.Managed ? string.Empty : + "[MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.I1)] "; + return $"{prefix}bool[]"; + } + if (Context.Options.UseSpan && !(array.SizeType != ArrayType.ArraySize.Constant && MarshalKind == MarshalKind.ReturnVariableArray)) {