Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lookup.hs build failure #420

Closed
christetreault opened this issue Jul 17, 2015 · 17 comments
Closed

Lookup.hs build failure #420

christetreault opened this issue Jul 17, 2015 · 17 comments

Comments

@christetreault
Copy link
Contributor

While trying to rebuild liquid I get the following error while compiling src/Language/Haskell/Liquid/Bare/Lookup.hs:

[39 of 59] Compiling Language.Haskell.Liquid.Bare.Lookup ( src/Language/Haskell/Liquid/Bare/Lookup.hs, interpreted )

src/Language/Haskell/Liquid/Bare/Lookup.hs:109:48:
    Couldn't match type ‘RdrName.RdrName’
                   with ‘GenLocated SrcSpan RdrName.RdrName’
    Expected type: SrcLoc.Located RdrName.RdrName
      Actual type: RdrName.RdrName
    In the second argument of ‘tcRnLookupRdrName’, namely ‘rn’
    In a stmt of a 'do' block:
      (_, lookupres) <- tcRnLookupRdrName env rn

versions:
cabal: 1.22.4.0
ghc: 7.10.1.20150715
kernel: 3.19.0-21-generic x64
branch: master
commit: 8ae41ba

@gridaphobe
Copy link
Contributor

Is ghc-7.10.1.20150715 the actual 7.10.1 release or a release candidate for 7.10.2?

LH should build without issue against the official 7.10.1 release :(

Sent from my iPhone

On Jul 17, 2015, at 10:52, Chris Tetreault [email protected] wrote:

While trying to rebuild liquid I get the following error while compiling src/Language/Haskell/Liquid/Bare/Lookup.hs:

[39 of 59] Compiling Language.Haskell.Liquid.Bare.Lookup ( src/Language/Haskell/Liquid/Bare/Lookup.hs, interpreted )

src/Language/Haskell/Liquid/Bare/Lookup.hs:109:48:
Couldn't match type ‘RdrName.RdrName’
with ‘GenLocated SrcSpan RdrName.RdrName’
Expected type: SrcLoc.Located RdrName.RdrName
Actual type: RdrName.RdrName
In the second argument of ‘tcRnLookupRdrName’, namely ‘rn’
In a stmt of a 'do' block:
(_, lookupres) <- tcRnLookupRdrName env rn
versions:
cabal: 1.22.4.0
ghc: 7.10.1.20150715
kernel: 3.19.0-21-generic x64
branch: master
commit: 8ae41ba


Reply to this email directly or view it on GitHub.

@christetreault
Copy link
Contributor Author

It's the 7.10.1 From the Herbert V. Riedell GHC PPA:

https://launchpad.net/~hvr/+archive/ubuntu/ghc

ghc --version lists:

$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 7.10.1.20150715

but the binary is installed as 7.10.2. I'll See about getting a different version and let you know how it goes.

@christetreault
Copy link
Contributor Author

I just downgraded to the actual 7.10.1, and it now compiles.

@gridaphobe
Copy link
Contributor

Thanks. I looked into it and 7.10.2 has a small API change that we'll need to account for when it comes out.

@hnsl
Copy link

hnsl commented Aug 8, 2015

+1

I am new to Haskell and have no idea how to downgrade my GHC, been fruitlessly struggling with it for one hour. They don't bother making GHC pkgs for OS X anymore, as you're simply supposed to use the latest Haskell bundle. The make file conflicts with the Library convention that is normally used so it appears to be extremely inconvenient to install them in parallel.

So yeah this breaks liquidhaskell for me right now.

@ranjitjhala
Copy link
Member

Also can you try to install "stack" and then do "stack install" ?
I think that is wired to automatically download and build with ghc 7.10.1

On Aug 8, 2015, at 9:05 AM, hannes-landeholm [email protected] wrote:

+1

I am new to Haskell and have no idea how to downgrade my GHC, been fruitlessly struggling with it for one hour. They don't bother making GHC pkgs for OS X anymore, as you're simply supposed to use the latest Haskell bundle.


Reply to this email directly or view it on GitHub.

@hnsl
Copy link

hnsl commented Aug 8, 2015

stack install installs ghc 7.10.2 for some reason even though that's not the ghc version specified by the nightly-2015-06-16 snapshot. I have no idea why. Bug in stack?

It installed ghc to /Users/user/.stack/programs/x86_64-osx/ghc-7.10.2/bin which works but it's the wrong version.

@hnsl
Copy link

hnsl commented Aug 8, 2015

I think the main problem is that stack does not recognise ghc version differences that small. "ghc-7.10" is the smallest possible resolver it accepts. It doesn't really give me a good impression that the ghc maintainers think back compatibility breaking changes only deserve a build/revision increment.

You can clearly see the change here:
https://downloads.haskell.org/~ghc/7.10.1/docs/html/libraries/ghc/TcRnDriver.html

https://downloads.haskell.org/~ghc/7.10.2/docs/html/libraries/ghc-7.10.2/TcRnDriver.html

@gridaphobe
Copy link
Contributor

The GHC developers take API compatibility very seriously, generally refusing to change APIs in minor releases. In this case there was a feature (the implicit call-stacks) that multiple people asked to have back-ported to 7.10.2 that caused the API change. GHC HQ compiled all of stackage against the change before consenting to the back-port and found only a single package that was affected. So they decided in this case that the benefits outweighed the cost of fixing a few packages.

I'll have a patch for LH and 7.10.2 on Monday, sorry for the inconvenience!

Sent from my iPhone

On Aug 8, 2015, at 11:43, hannes-landeholm [email protected] wrote:

I think the main problem is that stack does not recognise ghc version differences that small. "ghc-7.10" is the smallest possible resolver it accepts. It doesn't really give me a good impression that the ghc maintainers think back compatibility breaking changes only deserve a build/revision increment.

You can clearly see the change here:
https://downloads.haskell.org/~ghc/7.10.1/docs/html/libraries/ghc/TcRnDriver.html

https://downloads.haskell.org/~ghc/7.10.2/docs/html/libraries/ghc-7.10.2/TcRnDriver.html


Reply to this email directly or view it on GitHub.

@hnsl
Copy link

hnsl commented Aug 8, 2015

Ah, very interesting. Thanks for the insightful response.

@ranjitjhala
Copy link
Member

Thanks a ton Eric!

On Aug 9, 2015, at 2:47 AM, hannes-landeholm [email protected] wrote:

Ah, very interesting. Thanks for the insightful response.


Reply to this email directly or view it on GitHub.

@gridaphobe
Copy link
Contributor

LH should now compile against 7.10.2 as of 949d52a, but not against 7.10.1.

This is because 7.10.2 includes some changes in the desugarer and using CPP to work around the differences would require cabal's MIN_VERSION_* macros, which IME tends to break things like gcc-mod and hdevtools.

@ranjitjhala if you and/or Ben can put together a few notes about the work you've been doing with fixpoint in its CHANGES.md, I'll push a new release of everything to hackage.

@ranjitjhala
Copy link
Member

Eric, the stuff Ben and I are doing is NOT in fixpoint master so should
not affect this release IMO?

On Tue, Aug 11, 2015 at 4:59 AM, Eric Seidel [email protected]
wrote:

Closed #420 #420.


Reply to this email directly or view it on GitHub
#420 (comment)
.

Ranjit.

@gridaphobe
Copy link
Contributor

The --native flag and a bunch of changes to the SmtLib2 module are in master. Is that stuff not ready to be mentioned in the Readme/Changelog?

Sent from my iPhone

On Aug 10, 2015, at 18:37, Ranjit Jhala [email protected] wrote:

Eric, the stuff Ben and I are doing is NOT in fixpoint master so should
not affect this release IMO?

On Tue, Aug 11, 2015 at 4:59 AM, Eric Seidel [email protected]
wrote:

Closed #420 #420.


Reply to this email directly or view it on GitHub
#420 (comment)
.

Ranjit.

Reply to this email directly or view it on GitHub.

@ranjitjhala
Copy link
Member

Yes not ready -- probably there by mistake...

On Aug 11, 2015, at 8:51 AM, Eric Seidel [email protected] wrote:

The --native flag and a bunch of changes to the SmtLib2 module are in master. Is that stuff not ready to be mentioned in the Readme/Changelog?

Sent from my iPhone

On Aug 10, 2015, at 18:37, Ranjit Jhala [email protected] wrote:

Eric, the stuff Ben and I are doing is NOT in fixpoint master so should
not affect this release IMO?

On Tue, Aug 11, 2015 at 4:59 AM, Eric Seidel [email protected]
wrote:

Closed #420 #420.


Reply to this email directly or view it on GitHub
#420 (comment)
.

Ranjit.

Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub.

@gridaphobe
Copy link
Contributor

@ranjitjhala here are all the commits in fixpoint's master since the last release, FYI

ucsd-progsys/liquid-fixpoint@liquid-fixpoint-0.3.0.1...master#diff-d434977ac1a410b490aedf45f2ee7598

@ranjitjhala
Copy link
Member

Ah ok thanks!

So here's the deal: all the stuff actually belongs in cut solver but we've been pulling into master periodically to make sure we don't drift too far. But none of the changes are really "user facing" hence I thought no need to put anything into changes.md

Does that make sense?

On Aug 11, 2015, at 10:27 PM, Eric Seidel [email protected] wrote:

@ranjitjhala here are all the commits in fixpoint's master since the last release, FYI

ucsd-progsys/[email protected]#diff-d434977ac1a410b490aedf45f2ee7598


Reply to this email directly or view it on GitHub.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants