Search Issue Tracker

In Progress

Fix In Review for 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

Package: Entity Component System (ECS)

-

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.

  1. 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.

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.