From 05ade6738542ff556da4bbaa6ad4acd29290d989 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Magnus=20Dalen=20Kvalev=C3=A5g?= Date: Mon, 17 Mar 2025 17:20:59 +0100 Subject: [PATCH] Fix clipping float with python int for min and max --- array_api_compat/common/_aliases.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/array_api_compat/common/_aliases.py b/array_api_compat/common/_aliases.py index d7e8ef2d..35262d3a 100644 --- a/array_api_compat/common/_aliases.py +++ b/array_api_compat/common/_aliases.py @@ -363,10 +363,11 @@ def _isscalar(a): # At least handle the case of Python integers correctly (see # https://github.com/numpy/numpy/pull/26892). - if type(min) is int and min <= wrapped_xp.iinfo(x.dtype).min: - min = None - if type(max) is int and max >= wrapped_xp.iinfo(x.dtype).max: - max = None + if wrapped_xp.isdtype(x.dtype, "integral"): + if type(min) is int and min <= wrapped_xp.iinfo(x.dtype).min: + min = None + if type(max) is int and max >= wrapped_xp.iinfo(x.dtype).max: + max = None dev = device(x) if out is None: