Skip to content

Lots of "function cannot be proven read-only" failures suddenly popping up #2360

@ChrisRackauckas

Description

@ChrisRackauckas
  Function argument passed to autodiff cannot be proven readonly.
  If the the function argument cannot contain derivative data, instead call autodiff(Mode, Const(f), ...)
  See https://enzyme.mit.edu/index.fcgi/julia/stable/faq/#Activity-of-temporary-storage for more information.
  The potentially writing call is   store {} addrspace(10)* %.fca.0.1.extract, {} addrspace(10)** %.fca.0.1.gep, align 8, !dbg !9, !noalias !21, using   %.fca.0.1.gep = getelementptr inbounds { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double }, [1 x i8] }, { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double }, [1 x i8] }* %.innerparm, i64 0, i32 0, i32 1, !dbg !9

https://github.com/SciML/OrdinaryDiffEq.jl/actions/runs/14539831121/job/40795481724?pr=2677#step:6:1384

https://github.com/SciML/OrdinaryDiffEq.jl/actions/runs/14539831121/job/40795503066?pr=2677#step:6:1392

Seen in multiple CIs. Any clue as to where this is coming from? Was there a recent breaking change in Enzyme?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions