You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
currently, if there's a function accepting a template argument that cannot be resolved automatically by inferring it from its arguments (like std::get for example), it's not possible to use the automatically generated pushforward/pullback for it:
while Clad does create two different pushforwards for these specialisations, it only calls one of them, failing to distinguish between those.
std::get when used as std::get<10>(my_tuple), for instance, would cause this too, which is why it's important to solve this issue to fully support STL or even tuples.
this must be solved in both fwd and rvs modes in a way that also allows custom derivatives to be provided for these functions.
The text was updated successfully, but these errors were encountered:
currently, if there's a function accepting a template argument that cannot be resolved automatically by inferring it from its arguments (like
std::get
for example), it's not possible to use the automatically generated pushforward/pullback for it:expected output:
f(3)=9; df(3)=3
output:
f(3)=9; df(3)=2
while Clad does create two different pushforwards for these specialisations, it only calls one of them, failing to distinguish between those.
std::get
when used asstd::get<10>(my_tuple)
, for instance, would cause this too, which is why it's important to solve this issue to fully support STL or even tuples.this must be solved in both fwd and rvs modes in a way that also allows custom derivatives to be provided for these functions.
The text was updated successfully, but these errors were encountered: