Search Issue Tracker

Won't Fix

Votes

0

Found in

2020.3.40f1

Issue ID

UUM-28252

Regression

No

Android IL2CPP build fails with HashCodeCollisionExecption error when using a third-party DLL

--

-

How to reproduce:
1. Open the attached “repro-project”
2. Edit → Project Settings → Player and change the Scripting Backend to IL2CPP
3. File → Build Settings and click Build

Expected result: Build is successful.
Actual result: Build fails with Unity.IL2CPP.HashCodeCollisionException error.

Reproducible with: 2020.3.40f1
Fixed in: 2020.3.41f1
Not reproducible with: 2020.3.45f1
Could not test with: 2021.3.19f1, 2022.2.7f1, 2023.1.0b4, 2023.2.0a3 - Burst compiler errors

Reproducible on: macOS 13.2 (Intel)

Errors:
Unity.IL2CPP.HashCodeCollisionException: Hash code collision on value `76C8B01C3A28DBADE7A6A83143607D5945A81C46`
Existing Item was : `Aspose.Slides.    Aspose.Slides.   ::()`
Colliding Item was : `Aspose.Slides.    Aspose.Slides.   ::()`

at Unity.IL2CPP.HashCodeCache`1.GetUniqueHash(T value)
at Unity.IL2CPP.Naming.NamingComponent.ForMethodInternal(MethodReference method)
at Unity.IL2CPP.Naming.NamingComponent.ForMethodNameOnly(MethodReference method)
at Unity.IL2CPP.AssemblyConversion.PrimaryCollection.Steps.Global.WarmNamingComponent.ProcessItem(GlobalPrimaryCollectionContext context, AssemblyDefinition item, Object globalState)
at Unity.IL2CPP.AssemblyConversion.Steps.Base.GlobalScheduledStepAction`2.ProcessAllItems(TWorkerContext context, ReadOnlyCollection`1 items)
at Unity.IL2CPP.AssemblyConversion.Steps.Base.GlobalScheduledStepAction`2.WorkerWrapper(WorkItemData`3 workerData)
at Unity.IL2CPP.Contexts.Scheduling.PhaseWorkScheduler`1.WorkerLoop(Object data)

  1. Resolution Note:

    This item was addressed in Unity version 2020.3.41f1 and later.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.