on master help sign in
Fix borrowed type check
ddf9779Edwin Brady
src/Idris/Core/Typecheck.hs+1−1
@@ -271,7 +271,7 @@ checkUnique borrowed ctxt env tm
271 then put ((n, (LendOnly, NullType)) : ns)
271 then put ((n, (LendOnly, NullType)) : ns)
272 else put ((n, (Once, UniqueType)) : ns)
272 else put ((n, (Once, UniqueType)) : ns)
273 UType NullType -> do ns <- get
273 UType NullType -> do ns <- get
274− put ((n, (LendOnly, NullType)) : ns)
274+ put ((n, (Many, NullType)) : ns)
275 UType AllTypes -> do ns <- get
275 UType AllTypes -> do ns <- get
276 put ((n, (Once, AllTypes)) : ns)
276 put ((n, (Once, AllTypes)) : ns)
277 _ -> return ()
277 _ -> return ()
test/unique001/unique001d.idr+1−1
@@ -1,3 +1,3 @@
1
1
2steal : {a : UniqueType} -> Borrowed a -> a
2steal : {a : UniqueType} -> Borrowed a -> a
3−steal x = x
3+steal (Read x) = x