Skip to content

[ci-scan] Test failure: ElidedBoundsChecks Assert.Throws mismatch under R2R_CG2 #129065

@github-actions

Description

@github-actions

Build Information

Build: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1451092
Build error leg or test failing: coreclr Pri1 Runtime Tests Run R2R_CG2 linux x64 checked - JIT.opt (JIT/opt/RangeChecks/ElidedBoundsChecks/ElidedBoundsChecks.cmd)

Error Details

Xunit.Sdk.ThrowsException: Assert.Throws() Failure: Exception type was not an exact match
Expected: typeof(System.ArgumentOutOfRangeException)
Actual:   typeof(System.IndexOutOfRangeException)
   at Xunit.Assert.ThrowsImpl(Type exceptionType, Exception exception, Func`2 inspector)
   at Xunit.Assert.Throws[T](Func`1 testCode)
   at ElidedBoundsChecks.TestEntryPoint()
   at __GeneratedMainWrapper.Main()
Expected: 100
Actual: 101
END EXECUTION - FAILED

The test ElidedBoundsChecks expects an ArgumentOutOfRangeException from a bounds check on a ReadOnlySpan<char>, but under R2R/CrossGen2 compilation (R2R_CG2 mode) the JIT emits a raw IndexOutOfRangeException instead. The elided bounds check optimization is not preserving the correct exception type. This failure is distinct from the previous KBE #124322 (which was a FileCheck ARM64-NOT assertion failure, now closed).

Error Message

{
  "ErrorMessage": ["ElidedBoundsChecks", "Exception type was not an exact match"],
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

Impact on platforms

  • runtime-coreclr outerloop (def 108), linux x64, linux arm64, linux_musl x64, linux_musl arm64, windows x64, windows x86, osx x64, osx arm64 — all R2R_CG2 checked legs

First build it occurred


Filed by ci-failure-scan, which scans dnceng-public outer-loop pipelines on main and converts stable failures into KBEs and test-disable PRs.

Warning

Firewall blocked 1 domain

The following domain was blocked by the firewall during workflow execution:

  • dotnet.github.io

To allow these domains, add them to the network.allowed list in your workflow frontmatter:

network:
  allowed:
    - defaults
    - "dotnet.github.io"

See Network Configuration for more information.

Note

🔒 Integrity filter blocked 5 items

The following items were blocked because they don't meet the GitHub integrity level.

  • #125436 search_pull_requests: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #83422 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #128392 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #114222 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #110173 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".

To allow these resources, lower min-integrity in your GitHub frontmatter:

tools:
  github:
    min-integrity: approved  # merged | approved | unapproved | none

Generated by CI Outer-Loop Failure Scanner · ● 43.4M ·

Report

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
0 0 0

Metadata

Metadata

Assignees

No one assigned

    Labels

    Known Build ErrorUse this to report build issues in the .NET Helix tabagentic-workflowsblocking-clean-ciBlocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms'

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions