A* Pathfinding Project  4.3.2
The A* Pathfinding Project for Unity 3D
Unity.IL2CPP.CompilerServices Namespace Reference

Classes

class  Il2CppSetOptionAttribute
 Use this attribute on a class, method, or property to inform the IL2CPP code conversion utility to override the global setting for one of a few different runtime checks. More...
 

Enumerations

enum  Option { NullChecks = 1, ArrayBoundsChecks = 2, DivideByZeroChecks = 3 }
 The code generation options available for IL to C++ conversion. More...
 

Enumeration Type Documentation

◆ Option

enum Option
strong

The code generation options available for IL to C++ conversion.

Enable or disabled these with caution.

Enumerator
NullChecks 

Enable or disable code generation for null checks.

Global null check support is enabled by default when il2cpp.exe is launched from the Unity editor.

Disabling this will prevent NullReferenceException exceptions from being thrown in generated code. In *most* cases, code that dereferences a null pointer will crash then. Sometimes the point where the crash happens is later than the location where the null reference check would have been emitted though.

ArrayBoundsChecks 

Enable or disable code generation for array bounds checks.

Global array bounds check support is enabled by default when il2cpp.exe is launched from the Unity editor.

Disabling this will prevent IndexOutOfRangeException exceptions from being thrown in generated code. This will allow reading and writing to memory outside of the bounds of an array without any runtime checks. Disable this check with extreme caution.

DivideByZeroChecks 

Enable or disable code generation for divide by zero checks.

Global divide by zero check support is disabled by default when il2cpp.exe is launched from the Unity editor.

Enabling this will cause DivideByZeroException exceptions to be thrown in generated code. Most code doesn't need to handle this exception, so it is probably safe to leave it disabled.