Closed smflt closed 8 years ago
There are two work arounds:
MessagePackSerializer.PrepareType<testPack>()
. It ensures some code are AOTed. This is easier option.mpu.exe
can be applied. This is stabler option.thanks. i get solve from case 1
but MessagePackSerializer.PrepareType<testPack>()
have same error.
than i change MessagePackSerializer.PrepareType<int>()
.
it's success.
i wonder why MessagePackSerializer.PrepareType<testPack>()
is fail
public enum en
{
a,
b,
c,
d
};
public class testSubPack
{
public string hashStr;
public uint crc;
}
public class testPack
{
public en e;
public int a;
public string b;
//public testSubPack testpack;
public Dictionary<string, testSubPack> dicSub = new Dictionary<string, testSubPack> ();
}
MessagePackSerializer.PrepareType<uint>();
MessagePackSerializer.PrepareType<int>();
MessagePackSerializer.PrepareType<en>();
it's success case. i expect, it don't include basic variable.
Hmm, I will investigate it. Thank you for reporting!
Sorry for delay. I tested in 0.7.1 and Unity 5.3.5.f1 with IL2CPP, this error was not reproduced perfectly, I could work with only PrepareType<en>
. Preparing enums are required because enum types are always special. This cannot be resolved, so I will close this issue.
i downloaded (MsgPack.Cli.0.7.0.zip) from page https://github.com/msgpack/msgpack-cli/releases/
but i get aot error. from MessagePackSerializer.Get function so i made new project and made test code. but it's same.
how can i fix it? help!!
unity : 5.3.5 p6 msgpack : 0.7.0 unity-full\MsgPack.dll xcode : 7.3.1 (7D1014) script background : il2cpp, api compatibility level : net2.0
[code]
[error]