How to reproduce:
- Open the attached "IN-149167" project
- Locate Edit > Project Settings > Player > Other Settings > Configuration
- Set “Scripting Backend” to "CoreCLR"
- Set “Managed Stripping Level” to "Minimal"
- Build and Run a "Windows" player with Development Build "ON"
- In build observe the console / Player.log
Actual result: The build succeeds with no warning, but the player throws NotSupportedException: Linked away at UnityEngine.AnimationState.get_clip() every frame
Expected result: AnimationState.clip works in the CoreCLR player the same as it does on IL2CPP with the same "Minimal" stripping level
Reproducible with: 6000.7.0a2, 6000.7.0a5
Could not test with: 6000.0.82f1, 6000.3.22f1, 6000.5.9f1, 6000.6.0b9, 6000.7.0a1 (CoreCLR scripting backend does not exist)
Reproducible on: Windows 11
Not reproducible on: No other environments tested
Workaround: add a link.xml in Assets that preserves the type, forcing the linker to keep it:
<linker>
<assembly fullname="UnityEngine.AnimationModule">
<type fullname="UnityEngine.AnimationState" preserve="all"/>
</assembly>
</linker>