From 1b84d9e12ce86bbcb3660bb11eaa32e460ed8e10 Mon Sep 17 00:00:00 2001 From: Daniel Arndt Date: Fri, 5 Jul 2019 15:22:15 -0400 Subject: [PATCH] Avoid warnings in device code --- include/deal.II/base/tensor.h | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/include/deal.II/base/tensor.h b/include/deal.II/base/tensor.h index 961ceb7a18..5754cbc7f2 100644 --- a/include/deal.II/base/tensor.h +++ b/include/deal.II/base/tensor.h @@ -940,8 +940,7 @@ template DEAL_II_CONSTEXPR inline bool Tensor<0, dim, Number>::operator==(const Tensor<0, dim, OtherNumber> &p) const { -#if defined(DEAL_II_ADOLC_WITH_ADVANCED_BRANCHING) && \ - !defined(DEAL_II_COMPILER_CUDA_AWARE) +#if defined(DEAL_II_ADOLC_WITH_ADVANCED_BRANCHING) Assert(!(std::is_same::value || std::is_same::value), ExcMessage( @@ -1037,18 +1036,21 @@ Tensor<0, dim, Number>::operator-() const template -DEAL_II_CONSTEXPR inline typename Tensor<0, dim, Number>::real_type -Tensor<0, dim, Number>::norm() const +DEAL_II_CONSTEXPR DEAL_II_CUDA_HOST_DEV inline + typename Tensor<0, dim, Number>::real_type + Tensor<0, dim, Number>::norm() const { +#ifndef __CUDA_ARCH__ Assert(dim != 0, ExcMessage("Cannot access an object of type Tensor<0,0,Number>")); +#endif return numbers::NumberTraits::abs(value); } template -inline typename Tensor<0, dim, Number>::real_type DEAL_II_CUDA_HOST_DEV - Tensor<0, dim, Number>::norm_square() const +DEAL_II_CUDA_HOST_DEV inline typename Tensor<0, dim, Number>::real_type +Tensor<0, dim, Number>::norm_square() const { // We cannot use Assert inside a CUDA kernel #ifndef __CUDA_ARCH__ @@ -1201,8 +1203,7 @@ DEAL_II_ALWAYS_INLINE constexpr DEAL_II_CUDA_HOST_DEV const typename Tensor< Number>::value_type &Tensor:: operator[](const unsigned int i) const { - return values[i]; /*dealii::internal::TensorSubscriptor::subscript( - values, i, std::integral_constant());*/ + return values[i]; } -- 2.39.5