Browse Source

Fix implicit non-trivial default ctor

pull/1783/head
Salvage 2 years ago
parent
commit
f54209578b
No known key found for this signature in database
GPG Key ID: 1362C7A680BA7451
  1. 2
      src/Generator/AST/Utils.cs
  2. 1
      tests/dotnet/CSharp/CSharp.Tests.cs
  3. 2
      tests/dotnet/Common/Common.CSharp.csproj

2
src/Generator/AST/Utils.cs

@ -30,7 +30,7 @@ namespace CppSharp.AST
var isEmptyCtor = method.IsConstructor && method.Parameters.Count == 0; var isEmptyCtor = method.IsConstructor && method.Parameters.Count == 0;
var @class = method.Namespace as Class; var @class = method.Namespace as Class;
if (@class != null && @class.IsValueType && isEmptyCtor && method.IsDefaulted) if (@class != null && @class.IsValueType && isEmptyCtor && !@class.HasNonTrivialDefaultConstructor)
return true; return true;
if (method.IsDestructor) if (method.IsDestructor)

1
tests/dotnet/CSharp/CSharp.Tests.cs

@ -2050,7 +2050,6 @@ public unsafe class CSharpTests
} }
[Test] [Test]
[Ignore("https://github.com/mono/CppSharp/issues/1777")]
public void TestValueTypeStringMemberDefaultedCtor() public void TestValueTypeStringMemberDefaultedCtor()
{ {
var test = new CSharp.ValueTypeNoCtor(); var test = new CSharp.ValueTypeNoCtor();

2
tests/dotnet/Common/Common.CSharp.csproj

@ -1,5 +1,5 @@
<Project Sdk="Microsoft.NET.Sdk"> <Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup> <PropertyGroup>
<LangVersion>10.0</LangVersion> <LangVersion>11.0</LangVersion>
</PropertyGroup> </PropertyGroup>
</Project> </Project>
Loading…
Cancel
Save