diff --git a/src/operator/ConvImpl.cpp b/src/operator/ConvImpl.cpp index 3591bdfd495a8c1424cd869383efd7ad7fa4a215..17877ab1d5f15dadf85af77777f477e89df39747 100644 --- a/src/operator/ConvImpl.cpp +++ b/src/operator/ConvImpl.cpp @@ -30,9 +30,10 @@ void Aidge::ConvImpl_cuda<DIM>::forward() { // Lazy-initialize CuDNN convolution descriptor if (mConvDesc == nullptr) { - const std::vector<int> strides(mOp.template getAttr<ConvAttr::StrideDims>().begin(), mOp.template getAttr<ConvAttr::StrideDims>().end()); + const Conv_Op& convOp = static_cast<const Conv_Op&>(mOp); + const std::vector<int> strides(convOp.template getAttr<ConvAttr::StrideDims>().begin(), convOp.template getAttr<ConvAttr::StrideDims>().end()); const std::vector<int> paddings(DIM, 0); - const std::vector<int> upscales(mOp.template getAttr<ConvAttr::DilationDims>().begin(), mOp.template getAttr<ConvAttr::DilationDims>().end()); + const std::vector<int> upscales(convOp.template getAttr<ConvAttr::DilationDims>().begin(), convOp.template getAttr<ConvAttr::DilationDims>().end()); CHECK_CUDNN_STATUS(cudnnCreateConvolutionDescriptor(&mConvDesc)); CHECK_CUDNN_STATUS(