np.array_equal gives inconsistent results with structured arrays in NumPy 1.25
I'm optimizing some code but I'm working with an scenario with `np.array_equal` when comparing structured arrays in NumPy 1.25. I have two structured arrays with the same shape and dtype, but `np.array_equal` returns `False` even when I believe the data should be identical. Here's a minimal example that reproduces the behavior: ```python import numpy as np # Define a structured array dtype = [('x', 'i4'), ('y', 'f4')] arr1 = np.array([(1, 2.0), (3, 4.0)], dtype=dtype) arr2 = np.array([(1, 2.0), (3, 4.0)], dtype=dtype) # Check equality result = np.array_equal(arr1, arr2) print('Arrays are equal:', result) # Expected True ``` However, running this code snippet prints `Arrays are equal: False`. When I compare the arrays element-wise using `==`, I get the expected result, so it seems `np.array_equal` is failing somewhere: ```python print(arr1 == arr2) # Prints: # [[ True True] # [ True True]] ``` I've checked the data types and confirmed they match exactly. I also tried using `np.all(arr1 == arr2)` and it correctly returns `True`. Is there a known scenario with how `np.array_equal` handles structured arrays, or am I missing something in my understanding of how to compare them? Any insights would be greatly appreciated! For context: I'm using Python on CentOS. I'm developing on Linux with Python. Is this even possible?