Uploaded image for project: 'Realm .NET SDK'
  1. Realm .NET SDK
  2. RNET-950

Issues with Unity Il2cpp on UWP ARM64

    • Type: Icon: Bug Bug
    • Resolution: Gone away
    • Priority: Icon: Minor - P4 Minor - P4
    • None
    • Affects Version/s: None
    • Component/s: None

      Hey, we are currently evaluating Realm as a Database for our project. However we encountered some issues on UWP ARM64 with Unity.

      What happened?

      When we are trying to build for HoloLens 2 on UWP ARM64 via Unity, il2cpp throws an linker error

      Repro Steps

      Create an empty Unity project with Unity 2021.3.5f1 LTS, add Realm via UPM and build for UWP ARM64. After compiling the resulting Visual Studio Solution, we get the error message. iOS and Android seemed to work fine so far.

      We already tried to change the obvious parameters like build config (Debug, Release, Master), IL2CPP code generation (smaller faster build, faster runtime) and tried adding the dlls to the link.xml to avoid assembly stripping. Nothing did change.

      Version

      10.20.0

      What type of platform is this?

      Cross platform solution, UWP ARM64, Android, iOS

      Client OS and Version

      Windows 10 and Windows 11 tested with both Visual Studio 2019 and 2022

      Code Snippets

      We didn't write a single line of code, we just added the dependency

      Stacktrace

      1>EXEC : error : Unity.IL2CPP.Building.BuilderFailedException: Realm.cpp

      1>Build\Il2CppOutputProject\Source\il2cppOutput\Realm.cpp(38408): error C2664: 'Expression_tC1A9026F0E722992682A07158173040E34601E0A *PartialEvaluatingExpressionVisitor_EvaluateIndependentSubtrees_m9917185E9452E8E6BDE3AA9D2D8F3F0FDE09DABC(Expression_tC1A9026F0E722992682A07158173040E34601E0A *,RuntimeObject *,const RuntimeMethod *)': cannot convert argument 1 from 'Expression_t70AA908ECBD33E94249BF235E4EBB0F831AD8785 *' to 'Expression_tC1A9026F0E722992682A07158173040E34601E0A *'

      1>Build\Il2CppOutputProject\Source\il2cppOutput\Realm.cpp(38408): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or parenthesized function-style cast

      1>Build\Il2CppOutputProject\Source\il2cppOutput\Realm.cpp(9110): note: see declaration of 'PartialEvaluatingExpressionVisitor_EvaluateIndependentSubtrees_m9917185E9452E8E6BDE3AA9D2D8F3F0FDE09DABC'

      1>Build\Il2CppOutputProject\Source\il2cppOutput\Realm.cpp(38408): note: while trying to match the argument list '(Expression_t70AA908ECBD33E94249BF235E4EBB0F831AD8785 *, EvaluatableExpressionFilter_t27C7CB7F55B1EC4E002FFE3B10FEB5EEEBB041FE *, int)'

      1>Build\Il2CppOutputProject\Source\il2cppOutput\Realm.cpp(38409): error C2440: '=': cannot convert from 'Expression_tC1A9026F0E722992682A07158173040E34601E0A *' to 'Expression_t70AA908ECBD33E94249BF235E4EBB0F831AD8785 *'

      1>Build\Il2CppOutputProject\Source\il2cppOutput\Realm.cpp(38409): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or parenthesized function-style cast

            Assignee:
            nikola.irinchev@mongodb.com Nikola Irinchev
            Reporter:
            unitosyncbot Unito Sync Bot
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: