# Type inconsistency for sum function in case of complex CuArrays

**URL:** <https://discourse.julialang.org/t/type-inconsistency-for-sum-function-in-case-of-complex-cuarrays/36540>\
**Category:** General Usage\
**Tags:** cuarrays\
**Created:** [March 26, 2020, 7:57am UTC](https://discourse.julialang.org/t/type-inconsistency-for-sum-function-in-case-of-complex-cuarrays/36540 "2020-03-26T07:57:21Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![fedoroff](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fedoroff/32/53209_2.png) [@fedoroff](https://discourse.julialang.org/u/fedoroff)\
**Post date:** [March 26, 2020, 7:57am UTC](https://discourse.julialang.org/t/type-inconsistency-for-sum-function-in-case-of-complex-cuarrays/36540/1 "2020-03-26T07:57:21Z")

</div>

The result of sum(abs2, a) for complex a is also complex in case of a being a CuArray:

```julia
using CuArrays

a = zeros(ComplexF32, 10)
s = sum(abs2, a)
@show typeof(s)

agpu = CuArrays.zeros(ComplexF32, 10)
sgpu = sum(abs2, agpu)
@show typeof(sgpu)

```

```julia
typeof(s) = Float32
typeof(sgpu) = Complex{Float32}

```

Is it expected behavior?
