コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】InvalidProgramException: Invalid IL code in XXXX:CecilAttributesGenerated_ResetStatics (): IL_0001: call 0x06000301

概要

[ResetStatic]
public static bool IsInitialized { get; private set; }

Cecil Attributes の Reset Static をプロパティに対して付与したら

InvalidProgramException: Invalid IL code in XXXX:CecilAttributesGenerated_ResetStatics (): IL_0001: call      0x06000301

Unity 再生時に上記のエラーが発生する現象に遭遇した

[field:ResetStatic]
public static bool IsInitialized { get; private set; }

バッキングフィールドに対して Reset Static を付与したらエラーが出なくなった

また、Cecil Attributes を v0.4.1 から v0.5.0 にアップデートした場合もエラーが出なくなった

検証環境

  • macOS Monterey バージョン 12.3
  • Unity 2022.1.11f1
  • Cecil Attributes v0.4.1