{"action":"closed","issue":{"url":"https://api.github.com/repos/ucsd-progsys/liquidhaskell/issues/743","repository_url":"https://api.github.com/repos/ucsd-progsys/liquidhaskell","labels_url":"https://api.github.com/repos/ucsd-progsys/liquidhaskell/issues/743/labels{/name}","comments_url":"https://api.github.com/repos/ucsd-progsys/liquidhaskell/issues/743/comments","events_url":"https://api.github.com/repos/ucsd-progsys/liquidhaskell/issues/743/events","html_url":"https://github.com/ucsd-progsys/liquidhaskell/issues/743","id":161483718,"number":743,"title":"Deriving Read instance causes unsoundness","user":{"login":"nikivazou","id":714933,"avatar_url":"https://avatars.githubusercontent.com/u/714933?v=3","gravatar_id":"","url":"https://api.github.com/users/nikivazou","html_url":"https://github.com/nikivazou","followers_url":"https://api.github.com/users/nikivazou/followers","following_url":"https://api.github.com/users/nikivazou/following{/other_user}","gists_url":"https://api.github.com/users/nikivazou/gists{/gist_id}","starred_url":"https://api.github.com/users/nikivazou/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikivazou/subscriptions","organizations_url":"https://api.github.com/users/nikivazou/orgs","repos_url":"https://api.github.com/users/nikivazou/repos","events_url":"https://api.github.com/users/nikivazou/events{/privacy}","received_events_url":"https://api.github.com/users/nikivazou/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ucsd-progsys/liquidhaskell/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/ucsd-progsys/liquidhaskell/labels/unsoundness","name":"unsoundness","color":"e11d21"}],"state":"closed","locked":false,"assignee":{"login":"ranjitjhala","id":1650232,"avatar_url":"https://avatars.githubusercontent.com/u/1650232?v=3","gravatar_id":"","url":"https://api.github.com/users/ranjitjhala","html_url":"https://github.com/ranjitjhala","followers_url":"https://api.github.com/users/ranjitjhala/followers","following_url":"https://api.github.com/users/ranjitjhala/following{/other_user}","gists_url":"https://api.github.com/users/ranjitjhala/gists{/gist_id}","starred_url":"https://api.github.com/users/ranjitjhala/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ranjitjhala/subscriptions","organizations_url":"https://api.github.com/users/ranjitjhala/orgs","repos_url":"https://api.github.com/users/ranjitjhala/repos","events_url":"https://api.github.com/users/ranjitjhala/events{/privacy}","received_events_url":"https://api.github.com/users/ranjitjhala/received_events","type":"User","site_admin":false},"assignees":[{"login":"ranjitjhala","id":1650232,"avatar_url":"https://avatars.githubusercontent.com/u/1650232?v=3","gravatar_id":"","url":"https://api.github.com/users/ranjitjhala","html_url":"https://github.com/ranjitjhala","followers_url":"https://api.github.com/users/ranjitjhala/followers","following_url":"https://api.github.com/users/ranjitjhala/following{/other_user}","gists_url":"https://api.github.com/users/ranjitjhala/gists{/gist_id}","starred_url":"https://api.github.com/users/ranjitjhala/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ranjitjhala/subscriptions","organizations_url":"https://api.github.com/users/ranjitjhala/orgs","repos_url":"https://api.github.com/users/ranjitjhala/repos","events_url":"https://api.github.com/users/ranjitjhala/events{/privacy}","received_events_url":"https://api.github.com/users/ranjitjhala/received_events","type":"User","site_admin":false}],"milestone":null,"comments":14,"created_at":"2016-06-21T16:34:14Z","updated_at":"2016-06-25T15:40:44Z","closed_at":"2016-06-25T15:40:44Z","body":"The [following example](https://github.com/ucsd-progsys/liquidhaskell/blob/8fe9dfb0f1e194f51809ee428113816dd9b83101/tests/todo/DerivingRead.hs) is SAFE while should be unsafe. \r\n\r\n```\r\n{-@ checkNat :: Nat -> Int @-} \r\ncheckNat :: Int -> Int \r\ncheckNat x = x\r\n\r\nunsound :: Int\r\nunsound = checkNat (-1)\r\n\r\n\r\ndata TestBS = TestBS Int deriving (Read)\r\n```\r\nCurrent workarounds\r\n -  add `--trust-internals` flag to ignore the deriving instances\r\n -  delete the `deriving (Read)` instance\r\n"}}
{"actor":{"display_login":"ranjitjhala"}}