If you’re seeing the error just calling f
with Dual
arguments, then it’s not an issue with function registration in JuMP, so that simplifies the problem.
How much can you simplify f
while still seeing the stack overflow? Can you post a minimal example? Stack overflow generally happens when you have infinite recursion, something like:
julia> f(x) = f(-x)
f (generic function with 1 method)
julia> f(1)
ERROR: StackOverflowError:
Stacktrace:
[1] f(::Int64) at ./REPL[1]:1 (repeats 80000 times)
or something more complicated like:
f(x) = g(x)
g(x) = h(x)
h(x) = f(x)