From 3fee6abae2e048f7c007a40602d877f2d3761747 Mon Sep 17 00:00:00 2001 From: Katharine Hyatt Date: Mon, 23 Feb 2026 12:20:47 +0100 Subject: [PATCH] Move bcast check earlier --- src/host/broadcast.jl | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/host/broadcast.jl b/src/host/broadcast.jl index 4977d6a75..e5cbaffef 100644 --- a/src/host/broadcast.jl +++ b/src/host/broadcast.jl @@ -47,6 +47,9 @@ end @inline function _copyto!(dest::AbstractArray, bc::Broadcasted) axes(dest) == axes(bc) || Broadcast.throwdm(axes(dest), axes(bc)) isempty(dest) && return dest + if eltype(dest) <: BrokenBroadcast + throw(ArgumentError("Broadcast operation resulting in $(eltype(eltype(dest))) is not GPU compatible")) + end bc = Broadcast.preprocess(dest, bc) @kernel function broadcast_kernel_linear(dest, bc) @@ -69,10 +72,6 @@ end # ndims check for 0D support broadcast_kernel(dest, bc; ndrange = ndims(dest) > 0 ? size(dest) : (1,)) - if eltype(dest) <: BrokenBroadcast - throw(ArgumentError("Broadcast operation resulting in $(eltype(eltype(dest))) is not GPU compatible")) - end - return dest end