Search Issue Tracker
Fixed
Fixed in 1.4.X - Entities
Votes
2
Found in [Package]
1.2.1 - Entities
1.3.X - Entities
1.4.X - Entities
7000.0.0a1
Issue ID
ECSB-1096
Regression
No
Burst compilation error "BadImageFormatException: Expected reference type but got type kind 17" is thrown when using generics with ISystem
How to reproduce:
1. Open the “Reproduce-BadImageFormat“ project
2. Enter the Play Mode
3. Observe the Console window
Expected result: No errors are thrown in the Console window
Actual result: “BadImageFormatException: Expected reference type but got type kind 17“ error thrown in the Console window
Reproducible with: 1.0.16 (2022.3.28f1), 1.2.1 (2022.3.28f1, 6000.0.1f1)
Could not test with: 0.51.1-preview.21 (2021.3.38f1) (ISystem was not implemented yet)
Reproducible on: macOS 13.5.2 (Intel), Windows 11 (User’s)
Not reproducible on: No other environments tested
Note: The issue stems from the “[assembly: RegisterGenericSystemType(typeof(GenericSystem<TestType>))]“ code snippet.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- [Android] Audio sound is lower in the Player compared to the native music player
- Feet slide and misalign when playing retargeted animations
- IndexOutOfRangeException is thrown in NativePassCompiler when a graphics buffer is used in more than 5 render passes
- "Undo Stack Overflow" error is thrown, and Undo History is deleted when multiselected GameObjects are reparented to their GrandParents
- SearchColumn of type "ObjectReference" does not get refreshed for the custom SearchProvider when lighting generation finishes
Resolution Note (fix version 1.4.X - Entities):
Fixed the isystem ilpp to properly process generic ISystems in multiple assemblies. In addition it allows an assembly to be processed even if there are no unmanagedComponentSystemTypes in the assembly (basically when the assembly has no systems). This causes a problem when there are no systems, but there are [assembly: RegisterGenericSystemType()] calls.