diff options
Diffstat (limited to 'src/Data')
| -rw-r--r-- | src/Data/Array/Mixed/XArray.hs | 6 | 
1 files changed, 4 insertions, 2 deletions
| diff --git a/src/Data/Array/Mixed/XArray.hs b/src/Data/Array/Mixed/XArray.hs index 999ccc3..81b92c5 100644 --- a/src/Data/Array/Mixed/XArray.hs +++ b/src/Data/Array/Mixed/XArray.hs @@ -310,8 +310,10 @@ toList1 (XArray arr) = S.toList arr  empty :: forall sh a. Storable a => IShX sh -> XArray sh a  empty sh    | Dict <- lemKnownNatRank sh -  = XArray (S.constant (shxToList sh) -                       (error $ "Data.Array.Mixed.empty: shape was not empty: " ++ show sh)) +  , shxSize sh == 0 +  = XArray (S.fromVector (shxToList sh) VS.empty) +  | otherwise +  = error $ "Data.Array.Mixed.empty: shape was not empty: " ++ show sh  slice :: SNat i -> SNat n -> XArray (Just (i + n + k) : sh) a -> XArray (Just n : sh) a  slice i n (XArray arr) = XArray (S.slice [(fromSNat' i, fromSNat' n)] arr) | 
