diff --git a/pandas/core/dtypes/cast.py b/pandas/core/dtypes/cast.py index 408e58e23aaed..db3d764fb97a2 100644 --- a/pandas/core/dtypes/cast.py +++ b/pandas/core/dtypes/cast.py @@ -910,9 +910,9 @@ def maybe_upcast( """ new_dtype, fill_value = maybe_promote(values.dtype, fill_value) # We get a copy in all cases _except_ (values.dtype == new_dtype and not copy) - values = values.astype(new_dtype, copy=copy) + upcast_values = values.astype(new_dtype, copy=copy) - return values, fill_value + return upcast_values, fill_value # type: ignore[return-value] def invalidate_string_dtypes(dtype_set: set[DtypeObj]): diff --git a/pandas/tests/indexes/test_engines.py b/pandas/tests/indexes/test_engines.py index 663ba7332c864..02d8c5b2a6a22 100644 --- a/pandas/tests/indexes/test_engines.py +++ b/pandas/tests/indexes/test_engines.py @@ -57,13 +57,7 @@ class TestTimedeltaEngine: @pytest.mark.parametrize( "scalar", [ - # error: Argument 1 to "Timestamp" has incompatible type "timedelta64"; - # expected "Union[integer[Any], float, str, date, datetime64]" - pd.Timestamp( - pd.Timedelta(days=42).asm8.view( - "datetime64[ns]" - ) # type: ignore[arg-type] - ), + pd.Timestamp(pd.Timedelta(days=42).asm8.view("datetime64[ns]")), pd.Timedelta(days=42).value, pd.Timedelta(days=42).to_pytimedelta(), pd.Timedelta(days=42).to_timedelta64(),