Rasagar/Library/PackageCache/com.unity.burst/Tests/Runtime/Shared/090-Vectors-Exceptions.cs
2024-08-26 23:07:20 +03:00

25 lines
700 B
C#

using System;
using Unity.Burst;
using Unity.Mathematics;
namespace Burst.Compiler.IL.Tests
{
internal partial class VectorsExceptions
{
[TestCompiler(1.0f, ExpectedDiagnosticId = DiagnosticId.WRN_ExceptionThrownInNonSafetyCheckGuardedFunction)]
public static float Float4WithException(float a)
{
return GetFloat4(a).x;
}
private static float4 GetFloat4(float value)
{
if (value < 0)
{
throw new ArgumentException();
// Here the generated code should have a burst.abort + a return zero float4 (SIMD type)
}
return new float4(value);
}
}
}