diff --git a/include/clad/Differentiator/STLBuiltins.h b/include/clad/Differentiator/STLBuiltins.h index 40155c571..fd027ac89 100644 --- a/include/clad/Differentiator/STLBuiltins.h +++ b/include/clad/Differentiator/STLBuiltins.h @@ -729,7 +729,7 @@ template < typename It, typename ::clad::custom_derivatives::helpers::is_iterator::type = 1> clad::ValueAndAdjoint operator_plus_plus_reverse_forw(It* it, int, - It* d_it, int*) { + It* d_it, int) { return {++*it, ++*d_it}; } diff --git a/lib/Differentiator/ReverseModeVisitor.cpp b/lib/Differentiator/ReverseModeVisitor.cpp index 794443625..bdb6ba4da 100644 --- a/lib/Differentiator/ReverseModeVisitor.cpp +++ b/lib/Differentiator/ReverseModeVisitor.cpp @@ -2039,7 +2039,7 @@ Expr* ReverseModeVisitor::getStdInitListSizeExpr(const Expr* E) { CallArgs, Loc, CUDAExecConfig) .get(); } - if (call->getType()->isVoidType()) + if (!needsForwPass) return StmtDiff(call); Expr* callRes = nullptr; if (isInsideLoop)