Re: [GHC] #5579: alex and happy found during ./configure not used
#5579: alex and happy found during ./configure not used --+- Reporter: kolmodin | Owner: igloo Type: bug | Status: closed Priority: normal | Milestone: 7.4.1 Component: Build System |Version: 7.3 Resolution: fixed| Keywords: make alex happy Os: Linux| Architecture: Unknown/Multiple Failure: Building GHC failed | Difficulty: Unknown Testcase: | Blockedby: Blocking: |Related: --+- Changes (by igloo): * status: new = closed * difficulty: = Unknown * resolution: = fixed Comment: Fixed by: commit 2a54a0d622a4fa4b62accb2537eb4fc7736d6bb4 {{{ Author: Ian Lynagh ig...@earth.li Date: Sat Jan 28 23:33:11 2012 + Pass alex and happy locations to ghc-cabal; fixes #5579 We only use --with-alex / --with-happy if we know where alex / happy are. In particular, we don't need them when building from a source tarball. }}} -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5579#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #5579: alex and happy found during ./configure not used
#5579: alex and happy found during ./configure not used -+-- Reporter: kolmodin |Owner: igloo Type: bug | Status: new Priority: normal|Milestone: 7.4.1 Component: Build System | Version: 7.3 Keywords: make alex happy | Testcase: Blockedby:| Difficulty: Os: Linux | Blocking: Architecture: Unknown/Multiple | Failure: Building GHC failed -+-- Changes (by igloo): * owner: = igloo * milestone: = 7.4.1 Comment: Thanks for the report; I'll take a look. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5579#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC] #5579: alex and happy found during ./configure not used
#5579: alex and happy found during ./configure not used -+-- Reporter: kolmodin | Owner: Type: bug | Status: new Priority: normal| Component: Build System Version: 7.3 |Keywords: make alex happy Testcase:| Blockedby: Os: Linux |Blocking: Architecture: Unknown/Multiple | Failure: Building GHC failed -+-- This is with HEAD as of 2011-10-24. 0d6529f669104b6f22049d456a9600d949a09018 Looks like the alex and happy executables found during ./configure are not used when compiling libraries in stage 1. {{{ kolmodin@kolmodin:~/code/ghc$ time PATH=/home/kolmodin/.cabal/bin:$PATH ./configure --prefix=/home/kolmodin/usr --with-ghc=/usr/bin/ghc ... [snip] ... -- Configure completed successfully. Building GHC version : 7.3.20111024 Build platform: x86_64-unknown-linux Host platform : x86_64-unknown-linux Target platform : x86_64-unknown-linux Bootstrapping using : /usr/bin/ghc which is version : 6.12.1 Using GCC : /usr/bin/gcc which is version : 4.4.3 ld : /usr/bin/ld Happy: /home/kolmodin/.cabal/bin/happy (1.18.6) Alex : /home/kolmodin/.cabal/bin/alex (3.0.1) Python : /usr/bin/python Perl : /usr/bin/perl dblatex : xsltproc : /usr/bin/xsltproc HsColour was not found; documentation will not contain source links Building DocBook HTML documentation : NO Building DocBook PS documentation : NO Building DocBook PDF documentation : NO -- }}} When building; {{{ kolmodin@kolmodin:~/code/ghc$ make ===--- building phase 0 make -r --no-print-directory -f ghc.mk phase=0 phase_0_builds make[1]: Nothing to be done for `phase_0_builds'. ===--- building phase 1 make -r --no-print-directory -f ghc.mk phase=1 phase_1_builds inplace/bin/ghc-cabal configure --with- ghc=/home/kolmodin/code/ghc/inplace/bin/ghc-stage1 --with-ghc- pkg=/home/kolmodin/code/ghc/inplace/bin/ghc-pkg --flag in-ghc-tree --enable-library-profiling --enable-shared --enable-library-for-ghci --configure-option=CFLAGS= -fno-stack-protector --configure- option=LDFLAGS=--configure-option=CPPFLAGS=--with- gcc=/usr/bin/gcc --configure-option=--with-cc=/usr/bin/gcc --with- ar=/usr/bin/ar --with-ranlib=true -- dist utils/haddock Configuring haddock-2.9.4... ghc-cabal: The program alex version =2.3 is required but the version found at /usr/bin/alex is version 2.2 make[1]: *** [utils/haddock/dist/package-data.mk] Error 1 make: *** [all] Error 2 }}} Note that it tried to use {{{/usr/bin/alex}}} while ./configure had found {{{/home/kolmodin/.cabal/bin/alex}}}. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5579 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #5353: Cabal bug building haddock, alex, happy, etc
#5353: Cabal bug building haddock, alex, happy, etc +--- Reporter: igloo | Owner: duncan Type: bug| Status: closed Priority: highest| Milestone: 7.2.1 Component: libraries (other) |Version: 7.1 Resolution: fixed | Keywords: Testcase: | Blockedby: Difficulty: | Os: Unknown/Multiple Blocking: | Architecture: Unknown/Multiple Failure: None/Unknown | +--- Changes (by igloo): * status: new = closed * resolution: = fixed Comment: Fixed by {{{ commit fbba304d57b5909e38dabfdd674ef48510c2be56 Author: Duncan Coutts dun...@community.haskell.org Date: Mon Aug 8 16:50:45 2011 + Fix for intra-package build-tools dependencies }}} in Cabal HEAD, and Duncan says he'll make a new stable branch for the GHC 7.4 branch. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5353#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC] #5353: Cabal bug building haddock, alex, happy, etc
#5353: Cabal bug building haddock, alex, happy, etc --+- Reporter: igloo |Owner: duncan Type: bug| Status: new Priority: highest|Milestone: 7.2.1 Component: libraries (other) | Version: 7.1 Keywords: | Testcase: Blockedby: | Difficulty: Os: Unknown/Multiple | Blocking: Architecture: Unknown/Multiple | Failure: None/Unknown --+- There's a Cabal bug that affects building tools which are used to build themselves, such as haddock, alex and happy. The symptom is that cabal configure locates the program in dist/blah/blah rather than on the $PATH. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5353 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #3525: current dist source fail to build when Happy not found
#3525: current dist source fail to build when Happy not found -+-- Reporter: kristerw |Owner: simonmar Type: bug | Status: new Priority: normal|Milestone: Component: Compiler | Version: 6.11 Severity: normal| Resolution: Keywords:| Difficulty: Unknown Testcase:| Os: Unknown/Multiple Architecture: Unknown/Multiple | -+-- Changes (by simonmar): * owner: = simonmar * difficulty: = Unknown Comment: Thanks, I'll push. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/3525#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #3525: current dist source fail to build when Happy not found
#3525: current dist source fail to build when Happy not found -+-- Reporter: kristerw |Owner: simonmar Type: bug | Status: closed Priority: normal|Milestone: 6.12.1 Component: Build System | Version: 6.11 Severity: normal| Resolution: fixed Keywords:| Difficulty: Unknown Testcase:| Os: Unknown/Multiple Architecture: Unknown/Multiple | -+-- Changes (by simonmar): * status: new = closed * component: Compiler = Build System * resolution: = fixed * milestone: = 6.12.1 Comment: Fixed {{{ Fri Sep 18 11:43:27 BST 2009 Simon Marlow marlo...@gmail.com * Fix #3525 - we were still checking for ParsePkgConf.hs, which is gone }}} -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/3525#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC] #3525: current dist source fail to build when Happy not found
#3525: current dist source fail to build when Happy not found -+-- Reporter: kristerw | Owner: Type: bug | Status: new Priority: normal| Component: Compiler Version: 6.11 | Severity: normal Keywords:| Testcase: Os: Unknown/Multiple | Architecture: Unknown/Multiple -+-- The daily source tarballs from http://www.haskell.org/ghc/dist/current/dist/ errors out at configure time if Happy is not found. This error was introduced in the ghc-6.11.20090913-src.tar.bz2 source. A workaround to make it compile is to modify the configure script as: --- configure.orig 2009-09-17 23:07:01.0 +0200 +++ configure 2009-09-17 23:07:39.0 +0200 @@ -5605,7 +5605,7 @@ fi { echo $as_me:$LINENO: result: $fptools_cv_happy_version 5 echo ${ECHO_T}$fptools_cv_happy_version 6; } -if test ! -f compiler/parser/Parser.hs || test ! -f compiler/main/ParsePkgConf.hs || test ! -f compiler/cmm/CmmParse.hs || test ! -f compiler/parser/ParserCore.hs +if test ! -f compiler/parser/Parser.hs || test ! -f compiler/cmm/CmmParse.hs || test ! -f compiler/parser/ParserCore.hs then fp_version1=$fptools_cv_happy_version; fp_version2=1.16 fp_save_IFS=$IFS; IFS='.' -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/3525 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #3003: Happy does not reject pragmas
#3003: Happy does not reject pragmas -+-- Reporter: SamB |Owner: Type: bug | Status: new Priority: normal|Milestone: 6.12 branch Component: Build System | Version: 6.10.1 Severity: normal| Resolution: Keywords:| Difficulty: Unknown Testcase:| Os: Unknown/Multiple Architecture: Unknown/Multiple | -+-- Changes (by igloo): * difficulty: = Unknown * milestone: = 6.12 branch -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/3003#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #1580: Get GHC happy with alternate base packages (split base)
#1580: Get GHC happy with alternate base packages (split base) -+-- Reporter: SamB |Owner: Type: task | Status: closed Priority: normal|Milestone: 6.10 branch Component: Compiler | Version: 6.6.1 Severity: normal| Resolution: fixed Keywords:| Difficulty: Unknown Testcase:| Os: Unknown/Multiple Architecture: Unknown/Multiple | -+-- Changes (by igloo): * status: new = closed * resolution: = fixed Comment: Can't do more on this without concrete steps that are wanted. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1580#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC] #3003: Happy does not reject pragmas
#3003: Happy does not reject pragmas -+-- Reporter: SamB | Owner: Type: bug | Status: new Priority: normal| Component: Build System Version: 6.10.1| Severity: normal Keywords:| Testcase: Os: Unknown/Multiple | Architecture: Unknown/Multiple -+-- I was about to report a bug in GHC's handling of -fno-warn-missing signatures in pragmas, but wasn't able to reproduce it. Then I noticed it: the problem was that the pragma was at the very top of a {{{.y}}} file, where it was simply discarded, like this: {{{ {-# OPTIONS_GHC -fno-warn-missing-signatures #-} {- -*- Haskell -*- -} { }}} Happy should probably not just silently discard pragmas. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/3003 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #2495: Source dist should include Happy/Alex-generated sources
#2495: Source dist should include Happy/Alex-generated sources --+- Reporter: simonmar | Owner: Type: bug | Status: closed Priority: normal| Milestone: 6.10.1 Component: Build System |Version: 6.8.3 Severity: normal| Resolution: fixed Keywords:| Difficulty: Unknown Testcase:| Architecture: Unknown Os: Unknown | --+- Changes (by igloo): * status: new = closed * resolution: = fixed Comment: Now done. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/2495#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC] #2495: Source dist should include Happy/Alex-generated sources
#2495: Source dist should include Happy/Alex-generated sources -+-- Reporter: simonmar | Owner: Type: bug | Status: new Priority: normal| Milestone: 6.10.1 Component: Build System | Version: 6.8.3 Severity: normal|Keywords: Difficulty: Unknown |Testcase: Architecture: Unknown | Os: Unknown -+-- For 6.10.1 we need to make sure that the source dist contains the generated files, so that building from the source tarball doesn't require Happy or Alex. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/2495 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #1580: Get GHC happy with alternate base packages (split base)
#1580: Get GHC happy with alternate base packages (split base) --+- Reporter: SamB | Owner: Type: task | Status: new Priority: normal| Milestone: 6.10 branch Component: Compiler |Version: 6.6.1 Severity: normal| Resolution: Keywords:| Difficulty: Unknown Testcase:| Architecture: Unknown Os: Unknown | --+- Comment (by SamB): Replying to [comment:1 igloo]: Other than splitting up base (#1338), I'm not clear on exactly what you want. Is it more rebindable syntax? For example, the wiki page you point at says you want to replace Read, but I'm not sure exactly what you mean by that. You can make a class called Read, but GHC isn't going to know how to derive instances of it. If you could give a more concrete list of changes you want then that would be very helpful. Well, this ghc-prim package I'm seeing in HEAD is a step in the direction I meant ;-). -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1580#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #1859: happy required to build ghc 6.8.1 from source
#1859: happy required to build ghc 6.8.1 from source --+- Reporter: guest | Owner: igloo Type: bug | Status: new Priority: normal| Milestone: 6.8.2 Component: Compiler |Version: 6.8.1 Severity: normal| Resolution: Keywords:| Difficulty: Unknown Testcase:| Architecture: Unknown Os: Unknown | --+- Changes (by igloo): * owner: = igloo * milestone: = 6.8.2 Comment: Thanks for the report. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1859#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #1859: happy required to build ghc 6.8.1 from source
#1859: happy required to build ghc 6.8.1 from source --+- Reporter: guest | Owner: Type: bug | Status: new Priority: normal| Milestone: Component: Compiler |Version: 6.8.1 Severity: normal| Resolution: Keywords:| Difficulty: Unknown Testcase:| Architecture: Unknown Os: Unknown | --+- Changes (by duncan): * difficulty: = Unknown Comment: It's because while the ghc tarball contains pre-processed versions of the parser and lexer, the packages in the extralibs tarball do not. Thus the other workaround is to not build the extralibs tarball. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1859#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC] #1859: happy required to build ghc 6.8.1 from source
#1859: happy required to build ghc 6.8.1 from source --+- Reporter: guest | Owner: Type: bug | Status: new Priority: normal| Milestone: Component: Compiler |Version: 6.8.1 Severity: normal| Keywords: Testcase:| Architecture: Unknown Os: Unknown | --+- I am building GHC 6.8.1 from source tarballs: {{{ f91de87e7c0a3fe2f27c5a83212d9743 ghc-6.8.1-src-extralibs.tar.bz2 8d47d4dcde96c31fe8bedcee7f99eaf1 ghc-6.8.1-src.tar.bz2 }}} The sequence ./configure --prefix=/... ; make results in the error during make {{{ Configuring haskell-src-1.0.1.1... rm -f haskell-src/GNUmakefile cp Makefile.local haskell-src if ifBuildable/ifBuildable haskell-src; then \ cd haskell-src setup/Setup makefile -f GNUmakefile; \ fi Preprocessing library haskell-src-1.0.1.1... Setup: The program happy is required but it could not be found make[1]: *** [haskell-src/GNUmakefile] Error 1 make[1]: Leaving directory `/tmp/g1/ghc-6.8.1/libraries' make: *** [stage1] Error 2 }}} However, the Building guide [wiki:Building/Prerequisites] says If you start from a source tarball of GHC (i.e. not a darcs checkout), then you don't need Happy, because we supply the pre-processed versions of the Happy parsers. I have been able to repeat this problem both on an i386 Debian Etch system and a x86_64 RHEL4 system. The workaround is to install happy. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1859 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #1711: ghc 6.8 build not happy
#1711: ghc 6.8 build not happy --+- Reporter: [EMAIL PROTECTED] |Owner: igloo Type: bug| Status: closed Priority: normal |Milestone: 6.8.1 Component: Build System | Version: 6.8 Severity: normal | Resolution: fixed Keywords: happy, source build| Difficulty: Unknown Os: MacOS X| Testcase: Architecture: powerpc| --+- Changes (by igloo): * resolution: = fixed * status: new = closed Comment: I've now changed Cabal to not delete the file, so `make clean` will work too. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1711 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #1711: ghc 6.8 build not happy
#1711: ghc 6.8 build not happy --+- Reporter: [EMAIL PROTECTED] |Owner: Type: bug| Status: new Priority: normal |Milestone: 6.8.1 Component: Build System | Version: 6.8 Severity: normal | Resolution: Keywords: happy, source build| Difficulty: Unknown Os: MacOS X| Testcase: Architecture: powerpc| --+- Changes (by igloo): * milestone: 6.8 branch = 6.8.1 -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1711 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #1711: ghc 6.8 build not happy
#1711: ghc 6.8 build not happy --+- Reporter: [EMAIL PROTECTED] |Owner: igloo Type: bug| Status: new Priority: normal |Milestone: 6.8.1 Component: Build System | Version: 6.8 Severity: normal | Resolution: Keywords: happy, source build| Difficulty: Unknown Os: MacOS X| Testcase: Architecture: powerpc| --+- Changes (by igloo): * owner: = igloo -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1711 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #1711: ghc 6.8 build not happy
#1711: ghc 6.8 build not happy --+- Reporter: [EMAIL PROTECTED] |Owner: igloo Type: bug| Status: new Priority: normal |Milestone: 6.8.1 Component: Build System | Version: 6.8 Severity: normal | Resolution: Keywords: happy, source build| Difficulty: Unknown Os: MacOS X| Testcase: Architecture: powerpc| --+- Comment (by igloo): The only file that looks like it will be troublesome is `libraries /haskell-src/Language/Haskell/Parser.hs`. Future source tarballs (= 20070920) should include it. Running `make clean` will still delete the file, though. Ideally Cabal should deal with this properly, but for now I think the best thing we can do (not yet done) is to hack Setup.hs to not delete it if we didn't find happy when configuring. Incidentally, you shouldn't need to do so, but if you do want to build happy from source then you should use Cabal to do so, not the old Makefiles. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1711 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #1580: Get GHC happy with alternate base packages (split base)
#1580: Get GHC happy with alternate base packages (split base) -+-- Reporter: SamB |Owner: Type: task | Status: new Priority: normal|Milestone: 6.10 Component: Compiler | Version: 6.6.1 Severity: normal| Resolution: Keywords:| Difficulty: Unknown Os: Unknown | Testcase: Architecture: Unknown | -+-- Changes (by igloo): * milestone: = 6.10 Comment: Other than splitting up base (#1338), I'm not clear on exactly what you want. Is it more rebindable syntax? For example, the wiki page you point at says you want to replace Read, but I'm not sure exactly what you mean by that. You can make a class called Read, but GHC isn't going to know how to derive instances of it. If you could give a more concrete list of changes you want then that would be very helpful. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1580 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC] #1580: Get GHC happy with alternate base packages (split base)
#1580: Get GHC happy with alternate base packages (split base) ---+ Reporter: SamB | Owner: Type: task | Status: new Priority: normal| Milestone: Component: Compiler |Version: 6.6.1 Severity: normal| Keywords: Difficulty: Unknown | Os: Unknown Testcase:| Architecture: Unknown ---+ There are a ''lot'' of things wired into the compiler that would make it hard to create an alternate base package. See BaseSplit. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1580 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: cabal, extralibs, no happy
Christian Maeder wrote: 3. the happy-1.15 sources can not be compiled due to http://haskell.org/ghc/docs/6.6/html/users_guide/release-6-6.html # The HasBounds class has been removed from Data.Array.Base, and its bounds method is now in the IArray class. The MArray class has also gained a method getBounds. # Is there any easy fix? Yes, get Happy from darcs: http://darcs.haskell.org/happy I'm currently preparing the 1.16 release, you can get a release candidate here: http://haskell.org/happy/happy-1.16rc2.tar.gz. Feedback very welcome. Cheers, Simon ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
no happy
Bulat Ziganshin schrieb: may be this will be useful: -- This equalizer routine required because MArray interface was changed in GHC 6.6 #if defined(__GLASGOW_HASKELL__) (__GLASGOW_HASKELL__ = 605) getMBounds arr = getBounds arr #else getMBounds arr = return (bounds arr) #endif usage example: putMArrayWith write h arr= do bounds - getMBounds arr loop 0 (rangeSize(bounds)-1) (\i - unsafeRead arr i = write h) Hi Bulat, thanks for your answer, but the code in LALR.lhs:626:34 (happy-1.15) lacks a monad for getBounds (or I'm blind): countConflicts :: ActionTable - (Array Int (Int,Int), (Int,Int)) countConflicts action = (conflictArray, foldr (\(a,b) (c,d) - (a+c, b+d)) (0,0) conflictList) where conflictArray = listArray (bounds action) conflictList conflictList = map countConflictsState (assocs action) countConflictsState (state, actions) = foldr countMultiples (0,0) (elems actions) where countMultiples (LR'Multiple (_:_) (LR'Shift{})) (sr,rr) = (sr + 1, rr) countMultiples (LR'Multiple (_:_) (LR'Reduce{})) (sr,rr) = (sr, rr + 1) countMultiples (LR'Multiple as a) (sr,rr) = error bad conflict representation countMultiples _ c = c ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: no happy
Christian, This did the trick for me when I built Happy (just yesterday): LALR.lhs: change line 24 from import Data.Array hiding (bounds) into import Data.Array ProduceCode.lhs: change line 31 from marray_indices a = Data.Array.MArray.indices a into marray_indices a = range (bounds a) That should make you(r) Happy again. ;) HTH, Stefan ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: no happy
Hello Christian, Friday, November 3, 2006, 7:46:40 PM, you wrote: Hi Bulat, thanks for your answer, but the code in LALR.lhs:626:34 (happy-1.15) lacks a monad for getBounds (or I'm blind): in this case you should just import Data.Array.Base and define getBounds yourself -- Best regards, Bulatmailto:[EMAIL PROTECTED] ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
cabal, extralibs, no happy
1. The VERSION = 5.2 in libraries/fgl/Makefile does not correspond to libraries/fgl/fgl.cabal version:5.3 Probably VERSION should always be extracted from the .cabal file. 2. When installing libraries/network via cabal (under solaris) the 'extraLibraries = [nsl,socket]' have not been put into the package.conf file 3. the happy-1.15 sources can not be compiled due to http://haskell.org/ghc/docs/6.6/html/users_guide/release-6-6.html # The HasBounds class has been removed from Data.Array.Base, and its bounds method is now in the IArray class. The MArray class has also gained a method getBounds. # Is there any easy fix? Cheers Christian ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: cabal, extralibs, no happy
Hello Christian, Wednesday, November 1, 2006, 6:12:32 PM, you wrote: 3. the happy-1.15 sources can not be compiled due to http://haskell.org/ghc/docs/6.6/html/users_guide/release-6-6.html # The HasBounds class has been removed from Data.Array.Base, and its bounds method is now in the IArray class. The MArray class has also gained a method getBounds. # Is there any easy fix? may be this will be useful: -- This equalizer routine required because MArray interface was changed in GHC 6.6 #if defined(__GLASGOW_HASKELL__) (__GLASGOW_HASKELL__ = 605) getMBounds arr = getBounds arr #else getMBounds arr = return (bounds arr) #endif usage example: putMArrayWith write h arr= do bounds - getMBounds arr loop 0 (rangeSize(bounds)-1) (\i - unsafeRead arr i = write h) -- Best regards, Bulatmailto:[EMAIL PROTECTED] ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
RE: happy documentation fails to build
On 28 January 2005 23:50, Ian Lynagh wrote: The happy 1.15 documentation fails to build for me. The interesting looking bits of the build log are: [...] checking for xmllint... /usr/bin/xmllint checking for DocBook DTD... ok checking for xsltproc... /usr/bin/xsltproc checking for DocBook XSL stylesheet directory... /usr/share/xml/docbook/stylesheet/nwalsh checking for fop... no checking for fop.sh... no checking for xmltex... /usr/bin/xmltex checking for dvips... /usr/bin/dvips [...] /usr/bin/make -C happy/doc ps html make[1]: Entering directory `/home/igloo/happy/new/happy-1.15/happy/doc' /usr/bin/xsltproc --output happy.fo \ --stringparam toc.section.depth 3 --stringparam section.autolabel 1 --stringparam section.label.includes.component.label 1 \ /usr/share/xml/docbook/stylesheet/nwalsh/fo/docbook.xsl happy.xml Making portrait pages on USletter paper (8.5inx11in) /usr/bin/xmltex happy.fo This is TeX, Version 3.14159 (Web2C 7.4.5) [...] ! LaTeX Error: Something's wrong--perhaps a missing \item. Odd, the Happy docs build for me. Although building the ps version does take nearly 2 minutes and dumps 3Mb of stuff to stdout in the process - Sven, any idea why this might be? Cheers, Simon ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: happy documentation fails to build
Simon Marlow wrote: Odd, the Happy docs build for me. Although building the ps version does take nearly 2 minutes and dumps 3Mb of stuff to stdout in the process - Sven, any idea why this might be? It works for me in 21 sec and only 52kB of stdout. :-) The difference is that my PostScript is generated via fop (version 0.20.5) and Ian's via the PassiveTeX route. I have seen varying versions of DocBook + PassiveTeX breaking in various wonderful arcane ways in the past, so I recommend installing fop. The configure process will prefer fop if it finds it, just for that reason, BTW. Cheers, S. ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: happy documentation fails to build
On Mon, Jan 31, 2005 at 08:39:50PM +0100, Sven Panne wrote: that my PostScript is generated via fop (version 0.20.5) and Ian's via the PassiveTeX route. I have seen varying versions of DocBook + PassiveTeX breaking in various wonderful arcane ways in the past, so I recommend installing fop. The configure process will prefer fop if it finds it, just for that reason, BTW. fop is not an option for me(Debian) as it apparently requires non-free Java stuff. The xmltex bug looks well-known (e.g. Debian bugs #170477, #181444, #184072, #184086, #234884), and the reports point out that running pdfxmltex happy.fo; pdftops happy.pdf works (although the output doesn't look /quite/ right, e.g. - -4pc - -4pc appears at the top of each page). Thanks Ian ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
happy documentation fails to build
Hi all, The happy 1.15 documentation fails to build for me. The interesting looking bits of the build log are: [...] checking for xmllint... /usr/bin/xmllint checking for DocBook DTD... ok checking for xsltproc... /usr/bin/xsltproc checking for DocBook XSL stylesheet directory... /usr/share/xml/docbook/stylesheet/nwalsh checking for fop... no checking for fop.sh... no checking for xmltex... /usr/bin/xmltex checking for dvips... /usr/bin/dvips [...] /usr/bin/make -C happy/doc ps html make[1]: Entering directory `/home/igloo/happy/new/happy-1.15/happy/doc' /usr/bin/xsltproc --output happy.fo \ --stringparam toc.section.depth 3 --stringparam section.autolabel 1 --stringparam section.label.includes.component.label 1 \ /usr/share/xml/docbook/stylesheet/nwalsh/fo/docbook.xsl happy.xml Making portrait pages on USletter paper (8.5inx11in) /usr/bin/xmltex happy.fo This is TeX, Version 3.14159 (Web2C 7.4.5) [...] ! LaTeX Error: Something's wrong--perhaps a missing \item. See the LaTeX manual or LaTeX Companion for explanation. Type H return for immediate help. ... l.31 ...o:block1./fo:block/fo:list-item-label fo:list-item-body start-i... ? Output written on happy.dvi (5 pages, 97888 bytes). Transcript written on happy.log. make[1]: *** [happy.dvi] Error 1 make[1]: *** Deleting file `happy.dvi' make[1]: Leaving directory `/home/igloo/happy/new/happy-1.15/happy/doc' make: *** [build-stamp] Error 2 If I reformat it a bit then the error is in this bit of happy.fo: fo:list-block id=id2529507 space-before.optimum=1em space-before.minimum=0.8em space-before.maximum=1.2em space-after.optimum=1em space-after.minimum=0.8em space-after.maximum=1.2em provisional-label-separation=0.2em provisional-distance-between-starts=2em fo:list-item id=item-default-backend space-before.optimum=1em space-before.minimum=0.8em space-before.maximum=1.2em fo:list-item-label end-indent=label-end() fo:block1./fo:block !-- foo --/fo:list-item-label fo:list-item-body start-indent=body-start() fo:block fo:block`standard' Haskell 98 (should work with any compiler that compiles Haskell 98)./fo:block /fo:block /fo:list-item-body /fo:list-item and now looks like this: ! LaTeX Error: Something's wrong--perhaps a missing \item. See the LaTeX manual or LaTeX Companion for explanation. Type H return for immediate help. ... l.1801 !-- foo --/fo:list-item-label Thanks Ian ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[ ghc-Bugs-886200 ] LINE Pragma syntax and happy
Bugs item #886200, was opened at 2004-01-28 13:26 Message generated for change (Settings changed) made by simonmar You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=108032aid=886200group_id=8032 Category: Compiler (Parser) Group: 6.2 Status: Closed Resolution: Duplicate Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: LINE Pragma syntax and happy Initial Comment: From: [EMAIL PROTECTED] The LINE pragma syntax generated by happy produces strange error messages under ghc 6 System: Apple Powerbook G4, 15.2, 1.25GHz, 512MB, Mac OS X.3 (Panther) GHC: 6.2 happy: 1.9 (but apparently other operating systems including Debian Linux). Best Wishes, Kevin PS Bug tracking systems that crash browsers are not very clever -- someone using JavaScript rather than HaskellScript, perhaps?! $ ghc -c foo.hs GenericTemplate.hs:0: lexical error $ cat foo.hs module HumeParse where {-# LINE 1 GenericTemplate.hs -} $ ghc -c -v foo.hs Glasgow Haskell Compiler, Version 6.2, for Haskell 98, compiled by GHC version 6.2 Using package config file: /usr/local/lib/ghc-6.2/package.conf Packages = === Package {name = data, auto = False, import_dirs = [/usr/local/lib/ghc-6.2/hslibs-imports/data], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSdata], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [haskell98, lang, util], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = rts, auto = False, import_dirs = [], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSrts], extra_libraries = [m], include_dirs = [/usr/local/lib/ghc-6.2/include], c_includes = [Stg.h], package_deps = [], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [-u, _GHCziBase_Izh_static_info, -u, _GHCziBase_Czh_static_info, -u, _GHCziFloat_Fzh_static_info, -u, _GHCziFloat_Dzh_static_info, -u, _GHCziPtr_Ptr_static_info, -u, _GHCziWord_Wzh_static_info, -u, _GHCziInt_I8zh_static_info, -u, _GHCziInt_I16zh_static_info, -u, _GHCziInt_I32zh_static_info, -u, _GHCziInt_I64zh_static_info, -u, _GHCziWord_W8zh_static_info, -u, _GHCziWord_W16zh_static_info, -u, _GHCziWord_W32zh_static_info, -u, _GHCziWord_W64zh_static_info, -u, _GHCziStable_StablePtr_static_info, -u, _GHCziBase_Izh_con_info, -u, _GHCziBase_Czh_con_info, -u, _GHCziFloat_Fzh_con_info, -u, _GHCziFloat_Dzh_con_info, -u, _GHCziPtr_Ptr_con_info, -u, _GHCziPtr_FunPtr_con_info, -u, _GHCziStable_StablePtr_con_info, -u, _GHCziBase_False_closure, -u, _GHCziBase_True_closure, -u, _GHCziPack_unpackCString_closure, -u, _GHCziIOBase_stackOverflow_closure, -u, _GHCziIOBase_heapOverflow_closure, -u, _GHCziIOBase_NonTermination_closure, -u, _GHCziIOBase_BlockedOnDeadMVar_closure, -u, _GHCziIOBase_Deadlock_closure, -u, _GHCziWeak_runFinalizzerBatch_closure, -u, ___stginit_Prelude], framework_dirs = [], extra_frameworks = [HaskellSupport]} Package {name = base, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSbase], extra_libraries = [HSbase_cbits], include_dirs = [], c_includes = [HsBase.h], package_deps = [rts], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = haskell98, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HShaskell98], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [base], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = haskell-src, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HShaskell-src], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [base, haskell98], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = network, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports
[ ghc-Bugs-886199 ] LINE pragma syntax and happy
Bugs item #886199, was opened at 2004-01-28 13:20 Message generated for change (Comment added) made by simonmar You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=108032aid=886199group_id=8032 Category: Compiler (Parser) Group: 6.2 Status: Closed Resolution: Fixed Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Simon Marlow (simonmar) Summary: LINE pragma syntax and happy Initial Comment: From: [EMAIL PROTECTED] The LINE pragma syntax seems to have changed with ghc 6 -- happy-generated code now fails with an incomprehensible error. Upgrading happy may not be an option (system balance is very delicate)! Kevin System: MacOS X.3 (Panther) Machine: Apple Powerbook G4, 15.2, 1.25GHz, 512MB GHC: 6.2 happy: 1.9 (but apparently other OSes and happy versions). $ ghc -c foo.hs GenericTemplate.hs:0: lexical error $ cat foo.hs module HumeParse where {-# LINE 1 GenericTemplate.hs -} $ ghc -c -v foo.hs Glasgow Haskell Compiler, Version 6.2, for Haskell 98, compiled by GHC version 6.2 Using package config file: /usr/local/lib/ghc-6.2/ package.conf Packages Package {name = data, auto = False, import_dirs = [/usr/local/lib/ghc-6.2/hslibs-imports/ data], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSdata], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [haskell98, lang, util], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = rts, auto = False, import_dirs = [], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSrts], extra_libraries = [m], include_dirs = [/usr/local/lib/ghc-6.2/include], c_includes = [Stg.h], package_deps = [], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [-u, _GHCziBase_Izh_static_info, -u, _GHCziBase_Czh_static_info, -u, _GHCziFloat_Fzh_static_info, -u, _GHCziFloat_Dzh_static_info, -u, _GHCziPtr_Ptr_static_info, -u, _GHCziWord_Wzh_static_info, -u, _GHCziInt_I8zh_static_info, -u, _GHCziInt_I16zh_static_info, -u, _GHCziInt_I32zh_static_info, -u, _GHCziInt_I64zh_static_info, -u, _GHCziWord_W8zh_static_info, -u, _GHCziWord_W16zh_static_info, -u, _GHCziWord_W32zh_static_info, -u, _GHCziWord_W64zh_static_info, -u, _GHCziStable_StablePtr_static_info, -u, _GHCziBase_Izh_con_info, -u, _GHCziBase_Czh_con_info, -u, _GHCziFloat_Fzh_con_info, -u, _GHCziFloat_Dzh_con_info, -u, _GHCziPtr_Ptr_con_info, -u, _GHCziPtr_FunPtr_con_info, -u, _GHCziStable_StablePtr_con_info, -u, _GHCziBase_False_closure, -u, _GHCziBase_True_closure, -u, _GHCziPack_unpackCString_closure, -u, _GHCziIOBase_stackOverflow_closure, -u, _GHCziIOBase_heapOverflow_closure, -u, _GHCziIOBase_NonTermination_closure, -u, _GHCziIOBase_BlockedOnDeadMVar_closure, -u, _GHCziIOBase_Deadlock_closure, -u, _GHCziWeak_runFinalizzerBatch_closure, -u, ___stginit_Prelude], framework_dirs = [], extra_frameworks = [HaskellSupport]} Package {name = base, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSbase], extra_libraries = [HSbase_cbits], include_dirs = [], c_includes = [HsBase.h], package_deps = [rts], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = haskell98, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HShaskell98], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [base], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = haskell-src, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HShaskell-src], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [base, haskell98], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = network, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2
[ ghc-Bugs-886199 ] LINE pragma syntax and happy
Bugs item #886199, was opened at 2004-01-28 05:20 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=108032aid=886199group_id=8032 Category: Compiler (Parser) Group: 6.2 Status: Open Resolution: None Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: LINE pragma syntax and happy Initial Comment: From: [EMAIL PROTECTED] The LINE pragma syntax seems to have changed with ghc 6 -- happy-generated code now fails with an incomprehensible error. Upgrading happy may not be an option (system balance is very delicate)! Kevin System: MacOS X.3 (Panther) Machine: Apple Powerbook G4, 15.2, 1.25GHz, 512MB GHC: 6.2 happy: 1.9 (but apparently other OSes and happy versions). $ ghc -c foo.hs GenericTemplate.hs:0: lexical error $ cat foo.hs module HumeParse where {-# LINE 1 GenericTemplate.hs -} $ ghc -c -v foo.hs Glasgow Haskell Compiler, Version 6.2, for Haskell 98, compiled by GHC version 6.2 Using package config file: /usr/local/lib/ghc-6.2/ package.conf Packages Package {name = data, auto = False, import_dirs = [/usr/local/lib/ghc-6.2/hslibs-imports/ data], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSdata], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [haskell98, lang, util], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = rts, auto = False, import_dirs = [], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSrts], extra_libraries = [m], include_dirs = [/usr/local/lib/ghc-6.2/include], c_includes = [Stg.h], package_deps = [], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [-u, _GHCziBase_Izh_static_info, -u, _GHCziBase_Czh_static_info, -u, _GHCziFloat_Fzh_static_info, -u, _GHCziFloat_Dzh_static_info, -u, _GHCziPtr_Ptr_static_info, -u, _GHCziWord_Wzh_static_info, -u, _GHCziInt_I8zh_static_info, -u, _GHCziInt_I16zh_static_info, -u, _GHCziInt_I32zh_static_info, -u, _GHCziInt_I64zh_static_info, -u, _GHCziWord_W8zh_static_info, -u, _GHCziWord_W16zh_static_info, -u, _GHCziWord_W32zh_static_info, -u, _GHCziWord_W64zh_static_info, -u, _GHCziStable_StablePtr_static_info, -u, _GHCziBase_Izh_con_info, -u, _GHCziBase_Czh_con_info, -u, _GHCziFloat_Fzh_con_info, -u, _GHCziFloat_Dzh_con_info, -u, _GHCziPtr_Ptr_con_info, -u, _GHCziPtr_FunPtr_con_info, -u, _GHCziStable_StablePtr_con_info, -u, _GHCziBase_False_closure, -u, _GHCziBase_True_closure, -u, _GHCziPack_unpackCString_closure, -u, _GHCziIOBase_stackOverflow_closure, -u, _GHCziIOBase_heapOverflow_closure, -u, _GHCziIOBase_NonTermination_closure, -u, _GHCziIOBase_BlockedOnDeadMVar_closure, -u, _GHCziIOBase_Deadlock_closure, -u, _GHCziWeak_runFinalizzerBatch_closure, -u, ___stginit_Prelude], framework_dirs = [], extra_frameworks = [HaskellSupport]} Package {name = base, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSbase], extra_libraries = [HSbase_cbits], include_dirs = [], c_includes = [HsBase.h], package_deps = [rts], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = haskell98, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HShaskell98], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [base], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = haskell-src, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HShaskell-src], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [base, haskell98], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = network, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr
[ ghc-Bugs-886200 ] LINE Pragma syntax and happy
Bugs item #886200, was opened at 2004-01-28 05:26 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=108032aid=886200group_id=8032 Category: Compiler (Parser) Group: 6.2 Status: Open Resolution: None Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: LINE Pragma syntax and happy Initial Comment: From: [EMAIL PROTECTED] The LINE pragma syntax generated by happy produces strange error messages under ghc 6 System: Apple Powerbook G4, 15.2, 1.25GHz, 512MB, Mac OS X.3 (Panther) GHC: 6.2 happy: 1.9 (but apparently other operating systems including Debian Linux). Best Wishes, Kevin PS Bug tracking systems that crash browsers are not very clever -- someone using JavaScript rather than HaskellScript, perhaps?! $ ghc -c foo.hs GenericTemplate.hs:0: lexical error $ cat foo.hs module HumeParse where {-# LINE 1 GenericTemplate.hs -} $ ghc -c -v foo.hs Glasgow Haskell Compiler, Version 6.2, for Haskell 98, compiled by GHC version 6.2 Using package config file: /usr/local/lib/ghc-6.2/package.conf Packages = === Package {name = data, auto = False, import_dirs = [/usr/local/lib/ghc-6.2/hslibs-imports/data], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSdata], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [haskell98, lang, util], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = rts, auto = False, import_dirs = [], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSrts], extra_libraries = [m], include_dirs = [/usr/local/lib/ghc-6.2/include], c_includes = [Stg.h], package_deps = [], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [-u, _GHCziBase_Izh_static_info, -u, _GHCziBase_Czh_static_info, -u, _GHCziFloat_Fzh_static_info, -u, _GHCziFloat_Dzh_static_info, -u, _GHCziPtr_Ptr_static_info, -u, _GHCziWord_Wzh_static_info, -u, _GHCziInt_I8zh_static_info, -u, _GHCziInt_I16zh_static_info, -u, _GHCziInt_I32zh_static_info, -u, _GHCziInt_I64zh_static_info, -u, _GHCziWord_W8zh_static_info, -u, _GHCziWord_W16zh_static_info, -u, _GHCziWord_W32zh_static_info, -u, _GHCziWord_W64zh_static_info, -u, _GHCziStable_StablePtr_static_info, -u, _GHCziBase_Izh_con_info, -u, _GHCziBase_Czh_con_info, -u, _GHCziFloat_Fzh_con_info, -u, _GHCziFloat_Dzh_con_info, -u, _GHCziPtr_Ptr_con_info, -u, _GHCziPtr_FunPtr_con_info, -u, _GHCziStable_StablePtr_con_info, -u, _GHCziBase_False_closure, -u, _GHCziBase_True_closure, -u, _GHCziPack_unpackCString_closure, -u, _GHCziIOBase_stackOverflow_closure, -u, _GHCziIOBase_heapOverflow_closure, -u, _GHCziIOBase_NonTermination_closure, -u, _GHCziIOBase_BlockedOnDeadMVar_closure, -u, _GHCziIOBase_Deadlock_closure, -u, _GHCziWeak_runFinalizzerBatch_closure, -u, ___stginit_Prelude], framework_dirs = [], extra_frameworks = [HaskellSupport]} Package {name = base, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HSbase], extra_libraries = [HSbase_cbits], include_dirs = [], c_includes = [HsBase.h], package_deps = [rts], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = haskell98, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HShaskell98], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [base], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = haskell-src, auto = True, import_dirs = [/usr/local/lib/ghc-6.2/imports], source_dirs = [], library_dirs = [/usr/local/lib/ghc-6.2], hs_libraries = [HShaskell-src], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = [base, haskell98], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []} Package {name = network, auto = True, import_dirs = [/usr/local/lib/ghc-6.2
RE: bugs in happy
I tried to write a monadic lexer and parser just to find that: - omitting %name defaults to happyParse. However this name is used internally in a different function at a different location, leading to a Multiply declarations of `Parser.happyParse' error form GHC. It doesn't change if I give any of the -a -c -g flags. True, thanks for pointing it out. - the documentation on the web is outdated (version 1.11) The version number is incorrect, the docs are really for version 1.13. - the documentation for monadic parsers (Section 2.5) says that the type for happyError is [Token] - P a which I naively believed. It's P a. Later in the example you deceptively suggest to define happyError tokens = failE Parse error but, as above, there are not tokens. If you specify %lexer as well as %monad, then the type of happyError becomes P a. I suspect this is what you're doing. Cheers, Simon ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: Happy generates uncompilable files
On Fri, 9 Nov 2001, Sigbjorn Finne wrote: Hi, couple of things: * you don't have to side-effect mk/config.mk{.in} to make any changes to the definitions in there. Just create your own mk/build.mk and add definitions of variables you need for your build tree to work/behave as expected. The build.mk defns override those in mk/config.mk (see 5.3 of the GHC Building Guide for more). *slapping the forehead* Yes, ofcourse. * the break you're seeing is due to the GHC native code generator not being able to handle Int16-sized values internally. My suggested fix for the problem you're running into would be not to change the options given to Happy, but to GHC - i.e., have it generate code via C (== add -fvia-C to rename/ParseIface_HC_OPTS and parser/Parser_HC_OPTS in ghc/compiler/Makefile). I've committed the latter fix. I actually tried to do it but I guess I don't know my way around the makefile system well enough yet. Sorry for filling you mailboxes with stupid questions... But thanks anyway for the fix! Cheers, /Josef ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: Happy generates uncompilable files
Hi, couple of things: * you don't have to side-effect mk/config.mk{.in} to make any changes to the definitions in there. Just create your own mk/build.mk and add definitions of variables you need for your build tree to work/behave as expected. The build.mk defns override those in mk/config.mk (see 5.3 of the GHC Building Guide for more). * the break you're seeing is due to the GHC native code generator not being able to handle Int16-sized values internally. My suggested fix for the problem you're running into would be not to change the options given to Happy, but to GHC - i.e., have it generate code via C (== add -fvia-C to rename/ParseIface_HC_OPTS and parser/Parser_HC_OPTS in ghc/compiler/Makefile). I've committed the latter fix. hth --sigbjorn - Original Message - From: Josef Svenningsson [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, November 08, 2001 08:15 Subject: Happy generates uncompilable files Hi! Here's a small patch to fptool/mk/config.mk.in which I need for the compiler to compile smoothely on my sparc: *** config.mk.inThu Nov 8 17:12:46 2001 --- ../../fptools/mk/config.mk.in Wed Nov 7 16:23:03 2001 *** *** 833,843 # # Options to pass to Happy when we're going to compile the output with GHC # - ifeq $(i386_TARGET_ARCH) 1 GHC_HAPPY_OPTS= $(shell if ( test `echo $(HAPPY_VERSION) | sed -e s/\(.*\)\..*/\1/g` -gt 1 || test `echo $(HAPPY_VERSION) | sed -e s/.*\.\(.*\)/\1/g` -ge 9 ); then echo -agc; else echo -g; fi) - else - GHC_HAPPY_OPTS= -gc - endif # # Stuff from fptools/literate --- 833,839 Why? Because with the -a flag happy generates files which uses the Int16Rep function. This is only implemented for x86. :-( Could you please add this patch? It would make my life a lot easier. Cheers, /Josef ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Happy generates uncompilable files
Hi! Here's a small patch to fptool/mk/config.mk.in which I need for the compiler to compile smoothely on my sparc: *** config.mk.inThu Nov 8 17:12:46 2001 --- ../../fptools/mk/config.mk.in Wed Nov 7 16:23:03 2001 *** *** 833,843 # # Options to pass to Happy when we're going to compile the output with GHC # - ifeq $(i386_TARGET_ARCH) 1 GHC_HAPPY_OPTS= $(shell if ( test `echo $(HAPPY_VERSION) | sed -e s/\(.*\)\..*/\1/g` -gt 1 || test `echo $(HAPPY_VERSION) | sed -e s/.*\.\(.*\)/\1/g` -ge 9 ); then echo -agc; else echo -g; fi) - else - GHC_HAPPY_OPTS= -gc - endif # # Stuff from fptools/literate --- 833,839 Why? Because with the -a flag happy generates files which uses the Int16Rep function. This is only implemented for x86. :-( Could you please add this patch? It would make my life a lot easier. Cheers, /Josef ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
RE: Building 5.0 from CVS needs Happy 1.9
Running configure in the current fptools snapshot requires Happy 1.9: checking for happy... /home/reid/local/bin/happy checking for version of happy... configure: error: Happy version 1.9 or later is required to compile GHC. but, silly me, I only have Happy 1.8: $ happy --version Happy Version 1.8 Copyright (c) 1993-1996 Andy Gill, Simon Marlow (c) 1997-2000 Simon Marlow Is there an official way to get round this or shall I just hack the configure script to omit the check and then make sure I bootstrap happy before I try to bootstrap ghc? This seems to happen every time happy gets updated. Could you add a description of the solution to the how to use CVS instructions please? Delete your installed version of Happy. As long as you have the Happy sources in fptools/happy the configure script won't complain, so you can build make install in fptools/happy before going on to build GHC. Cheers, Simon ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Building 5.0 from CVS needs Happy 1.9
Running configure in the current fptools snapshot requires Happy 1.9: checking for happy... /home/reid/local/bin/happy checking for version of happy... configure: error: Happy version 1.9 or later is required to compile GHC. but, silly me, I only have Happy 1.8: $ happy --version Happy Version 1.8 Copyright (c) 1993-1996 Andy Gill, Simon Marlow (c) 1997-2000 Simon Marlow Is there an official way to get round this or shall I just hack the configure script to omit the check and then make sure I bootstrap happy before I try to bootstrap ghc? This seems to happen every time happy gets updated. Could you add a description of the solution to the "how to use CVS" instructions please? -- Alastair Reid[EMAIL PROTECTED]http://www.cs.utah.edu/~reid/ ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
How to install ghc/happy on Sparc from source?
Hi, I need to install a recent ghc version on a Sparc running Solaris. I cannot use the precompiled binaries as I don't have access to /usr/local and it seems that this path is hard-compiled into the binaries. So I tried with the source package for ghc 4.08. It told me it needs "happy" to compile. So I downloaded happy 1.9, again the sources, for the same reason. Now happy tells me, it needs ghc 4.02 or newer to compile. On http://www.haskell.org I could only find ghc 4.06 in the "older releases" section. And ghc 4.06 again needs happy :-/ So what can I do to compile ghc from source on a Sparc Solaris machine without having an earlier version of ghc installed and without access to /usr/local? Can someone give me some hints? Thanks :-) Best regards, Frank -- Dipl.-Inform. Frank Steinermailto:[EMAIL PROTECTED] Lehrstuhl f. Programmiersprachen mailto:[EMAIL PROTECTED] CAU Kiel, Olshausenstrae 40 Phone: +49 431 880-7265, Fax: -7613 D-24098 Kiel, Germany http://www.informatik.uni-kiel.de/~fst/ ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: How to install ghc/happy on Sparc from source?
On Thu, Mar 01, 2001 at 18:00:36 +0100, Frank Steiner wrote: Hi, Hi Frank, I need to install a recent ghc version on a Sparc running Solaris. I cannot use the precompiled binaries as I don't have access to /usr/local and it seems that this path is hard-compiled into the binaries. hmm, AFAIR ``./configure --prefix=/some/path'' works... You can also use: $ ./configure $ make in-place Cheers, Michael -- () ASCII ribbon campaign | Chair for Computer Science II | GPG: F65C68CD /\ against HTML mail | RWTH Aachen, Germany | PGP: 1D0DD0B9 WWW: http://www-i2.informatik.rwth-aachen.de/Software/Haskell/ ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
RE: How to install ghc/happy on Sparc from source?
| I need to install a recent ghc version on a Sparc running | Solaris. I cannot use the precompiled binaries as I don't | have access to /usr/local and it seems that this path is | hard-compiled into the binaries. Uh? In what way do you mean? The 4.08.2 binary package can be installed anywhere; I tried it myself before we released it. For a start, as previously suggested ./configure make in-place should get you a working system without the need to copy stuff to any new installation directory. You do need 'make' to be GNU make and not the Solaris one, but that's about all. Can you send me a log of the failed installation attempt(s)? This ought to work. You really don't want to get into compiling GHC from source if you can possibly avoid it. J (4.08.2 release manager) ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: How to install ghc/happy on Sparc from source?
Yep, thanks to those who answered, I must have messed up sth in my first try... Maybe because I was installing ghc, happy and some other program (for which I need ghc) more or less in parallel, and I might have missed sth in that process. I though had installed the binaries with the --prefix parameter during configure, and when calling the local ghc binary in my homedir, I got some error message about /usr/local with some library... Tried it again and now it works. I must have done sth wrong last time! Sorry and thanks :-) Best regards, Frank -- Dipl.-Inform. Frank Steinermailto:[EMAIL PROTECTED] Lehrstuhl f. Programmiersprachen mailto:[EMAIL PROTECTED] CAU Kiel, Olshausenstrae 40 Phone: +49 431 880-7265, Fax: -7613 D-24098 Kiel, Germany http://www.informatik.uni-kiel.de/~fst/ ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC-Bugs] Happy 1.9's behaviour for terminals differs from docs and 1.8 ?
The handling of terminals in happy 1.9 seems to have been broken to some extent; terminals which DON'T have an explict $$ in them, ie, tokens defined like: %token INT { TokenInt _ } as opposed to %token INT { TokenInt $$ } do not get a sibstitution for a happy_var_position at all, so referring to them with $position doesn't work. This is different to the the behaviour in Happy 1.8, where one would get the whole terminal matched to the happy_var_position. I have done -a- fix for it, which happens to work for my circumstances, and ought to work in general, but I haven't really thought hard about it enough to be sure, and in any case, there's probably a better solution :-) ... but if you want it, its at: http://www.cse.unsw.edu.au/~michaelz/files/ProduceCode.patch (made with diff -c 5) I had compiled happy-1.9 from a source tarball, downloaded from http://www.haskell.org/happy/dist/1.9/happy-1.9-src.tar.gz on 22/02/2001 Yaay my first bug report out into the big wide world :-) -- Michael `Wumpus' Zinn | "The Universe speaks in many languages, but only one [EMAIL PROTECTED] | voice ... it speaks in the language of hope... trust * | ... and compassion; it is the language of the Heart" |-- G'Kar's Declaration of Principles (Babylon 5) ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
RE: [GHC-Bugs] Happy 1.9's behaviour for terminals differs from docs and 1.8 ?
The handling of terminals in happy 1.9 seems to have been broken to some extent; terminals which DON'T have an explict $$ in them, ie, tokens defined like: %token INT { TokenInt _ } as opposed to %token INT { TokenInt $$ } do not get a sibstitution for a happy_var_position at all, so referring to them with $position doesn't work. This is different to the the behaviour in Happy 1.8, where one would get the whole terminal matched to the happy_var_position. Yes, this is a bug in happy-1.9. I fixed it recently in the CVS repository, and as soon as I get a chance I'll do a 1.10 release. Cheers, Simon ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: fptools/configure thinks happy 1.10 1.9
Volker Stolz [EMAIL PROTECTED] writes: My happy is 1.10, everything fresh from cvs: --- checking for happy... /home/stolz/Linux/haskell/ghc-4.08.1/bin/happy checking for version of happy... Happy version 1.9 or later is required to compile GHC. --- And in a sense, it is right. I'd really like to come up with a fix, but I guess... [...perl silliness deleted..] If you assume that the version string is of the form X.Y, the following test should do the trick: if ( test `echo "$fptools_cv_happy_version" | sed -e "s/\(.*\)\..*/\1/g"` "-eq" "1" test `echo "$fptools_cv_happy_version" | sed -e "s/.*\.\(.*\)/\1/g"` "-lt" "9" ); then substitute it for the usage of 'expr' in the FPTOOLS_HAPPY macro in aclocal.m4 rebuild the configure script, i.e., I haven't committed this tweak. --sigbjorn ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
fptools/configure thinks happy 1.10 1.9
My happy is 1.10, everything fresh from cvs: --- checking for happy... /home/stolz/Linux/haskell/ghc-4.08.1/bin/happy checking for version of happy... Happy version 1.9 or later is required to compile GHC. --- And in a sense, it is right. I'd really like to come up with a fix, but I guess... @split0 = split(/\./,$ARGV[0]); @split1 = split(/\./,$ARGV[1]); @bools = zipWith(\@split0,\@split1); $lt = fold(\oder,\@bools); exit $lt; sub zipWith { my ($l1,$l2) = @_; $h1 = shift @$l1; $h2 = shift @$l2; if ((defined($h1)) || (defined($h2))){ return (($h1 $h2),zipWith($l1,$l2)); } else { return (); } } sub fold { my ($f,$args) = @_; my $tmp = 0; foreach $arg (@$args) { $tmp = $f($tmp,$arg); } return $tmp; } sub oder { return ($_[0] || $_[1]); } ...is too long for a perl one-liner in configure. Or would anyone like to go for "ghc -e -n 'foldl ... (zipWith ... (split ...))'"? It should be even smaller; I didn't manage to inline all the things I wanted to in the perl script. Anyway, it works, it checks if the first argument is less than the second: perl vers.pl "1.9" "1.10" ; echo $? 1 perl vers.pl "4.08.1" "4.08"; echo $? 0 Got to take my pills now, Volker -- Volker Stolz * [EMAIL PROTECTED] * PGP + S/MIME ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: fptools/configure thinks happy 1.10 1.9
Fri, 26 Jan 2001 14:57:58 +0100, Volker Stolz [EMAIL PROTECTED] pisze: ...is too long for a perl one-liner in configure. perl -e '@v = map {join "", map {chr} split /\./} @ARGV; exit ($v[0] ge $v[1] ? 0 : 1)' 1.10 1.9 # Returns 0, i.e. the second version is at least as high as the first. # Works for numbers up to 255. -- __(" Marcin Kowalczyk * [EMAIL PROTECTED] http://qrczak.ids.net.pl/ \__/ ^^ SYGNATURA ZASTPCZA QRCZAK ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: fptools/configure thinks happy 1.10 1.9
[ Volker, is your Mail-Followup-To:-header intended like this? ] * Volker Stolz [EMAIL PROTECTED] [2001-01-26T14:57+0100]: [ configure thinks: happy-1.10 happy-1.9 ] And in a sense, it is right. I'd really like to come up with a fix, but I guess... [ perl thingy ] perl vers.pl "1.9" "1.10" ; echo $? 1 perl vers.pl "4.08.1" "4.08"; echo $? 0 [982]% perl vers.pl 4.09 4.08.1 zsh: exit 1 perl vers.pl 4.09 4.08.1 [983]% BTW: Using perl in autoconf... What next? Slicing bread with the Swiss Army Chainsaw(tm)? heart surgery? splitting atom cores? B) quote The `configure' script [...] should not use any utilities directly except these: cat cmp cp diff echo egrep expr false grep install-info ln ls mkdir mv pwd rm rmdir sed sleep sort tar test touch true /quote sequence_compare () { # usage: # ``IFS="." sequence_compare 1.2.3 -lt|-le|-eq|-ge|-gt 4.5'' # - no *sh- or system-specific features # - relies on IFS as field separator a="$1"; op="$2"; b="$3"; while test -n "$a$b" do set -- $a; h1="$1"; shift 2/dev/null; a="$*" set -- $b; h2="$1"; shift 2/dev/null; b="$*" test -n "$h1" || h1=0; test -n "$h2" || h2=0 test ${h1} -eq ${h2} || break done test ${h1} "$op" ${h2} } Of course, for autoconf functions are VERBOTEN, and therefore the original $IFS has to be saved later restored... Cheers, Michael p.s.: http://www.focusresearch.com/gregor/psh/ (interactive perl shell) =) -- () ASCII ribbon campaign | Chair for Computer Science II | GPG: F65C68CD /\ against HTML mail | RWTH Aachen, Germany | PGP: 1D0DD0B9 "Ada is PL/I trying to be Smalltalk." -- Codoso diBlini ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
RE: happy/LALR.hs doesn't compile
With sources (and GHC) as checked out at 3am BST today: /usr/local/pub-bkb/ghc/ghc-latest/bin/ghc -cpp -fglasgow-exts -O -H12m -c LALR.lhs -o LALR.o -osuf o LALR.lhs:314: Variable not in scope: `newArray' LALR.lhs:316: Variable not in scope: `freezeArray' LALR.lhs:336: Variable not in scope: `readArray' LALR.lhs:337: Variable not in scope: `writeArray' LALR.lhs:342: Variable not in scope: `readArray' Fixed. Simon
Re: Happy v1.6.
On Thu, Sep 30, 1999 at 19:16:48 +0100, Alex Ferguson wrote: My next worry is that when I try to build ghc from source on an Alpha, I'll get bitten on the bum by the ghc-needs-Happy-needs-(recent)-ghc syndrome, or otherwise spend mucho time wrestling with the Happy build setup to get round this. Generate the two happy generated files manually, on a machine with a working happy... ghc/compiler/rename/ParseIface.y ghc/compiler/parser/Parser.y To fool `configure', make a shell script `happy', like: #! /bin/sh cat EOM Happy Version 1.6 EOM Cheers, Michael -- If it doesn't work, force it. If it breaks, it needed replacing anyway.
RE: Internal Happy Error
The following ``code'' forces ghc-4.04 to crash with an internal Happy error message: module Rules where import GlaExts import PrelGHC integerGcd :: Integer - Integer - Integer integerGcd a b = case a of (S# a) - case b of (S# b) - unsafePerformIO $ _ccall_ gcdSSSZh (I# a) (1::Int) (I# b) = \g - case g of (I# g) - return (S# g) (J# sb b) - unsafePerformIO $ _casm_ gcdSBSZh a sb b = \g - case g of (I# g) - return (S# g) I get a parse error: ~/scratch ghc-4.04 test57.lhs -fglasgow-exts test57.lhs:14: parse error on input `gcdSBSZh' it maybe that you compiled up your GHC with an old version of Happy - there have been several bugfixes in this area in the last few months. Cheers, Simon
Internal Happy Error (another one)
Hi there, ghc-4.04's parser does not seem to like expressions of the following kind: case a of (#I a) - and blah (# sa, a, #) Upon using these expressions it dies due to an internal Happy error. Hope this helps, Marc van Dongen
Internal Happy Error
Hi there, The following ``code'' forces ghc-4.04 to crash with an internal Happy error message: module Rules where import GlaExts import PrelGHC integerGcd :: Integer - Integer - Integer integerGcd a b = case a of (S# a) - case b of (S# b) - unsafePerformIO $ _ccall_ gcdSSSZh (I# a) (1::Int) (I# b) = \g - case g of (I# g) - return (S# g) (J# sb b) - unsafePerformIO $ _casm_ gcdSBSZh a sb b = \g - case g of (I# g) - return (S# g) Hope that helps. Regards, Marc van Dongen
happy in aclocal...
Hi! This tiny patch to aclocal.m4 lets "./configure" reject happy versions below 1.4. They won't work with ghc, anyway... :-) Cheers, Michael --- aclocal.m4.orig Thu Jun 24 15:36:06 1999 +++ aclocal.m4 Thu Jun 24 15:37:22 1999 @@ -147,9 +147,10 @@ else fptools_cv_happy_version=""; fi; -if expr "$fptools_cv_happy_version" "" 1.4 /dev/null 21; then +min_happy_version=1.5 +if expr "$fptools_cv_happy_version" "" "$min_happy_version" /dev/null 21; then echo - echo "Happy version 1.4 or later is required to compile GHC." + echo "Happy version $min_happy_version or later is required to compile GHC." exit 1; fi; ]) -- No sig is good sig...
CVS ghc: Internal happy error with happy-1.4
Hi! Maybe someone wants to document that the CVS ghc from the last few days (since yacc-happy parser shift?) does not work with happy-1.4. Nevertheless it works with happy-1.5. The offending part (although IMHO Printf.lhs is *NOT* the problem!): ==fptools== make all --no-print-directory -r; in /opt/i2/work2/install/ghc/cvs/fptools-solaris2.7/ghc/lib/misc rm -f Printf.o ; if [ ! -d Printf ]; then mkdir Printf; else find Printf -name '*.o' -print | xargs rm -f __rm_food ; fi ; ../../../ghc/driver/ghc -K32m -H100m -dcore-lint -I. -i../posix -i../concurrent -recomp -cpp -fglasgow-exts -fvia-C -Rghc-timing -O -split-objs -odir Printf -static-c Printf.lhs -o Printf.o -osuf o Internal Happy error make[3]: *** [Printf.o] Error 1 make[2]: *** [all] Error 1 make[1]: *** [all] Error 1 make: *** [all] Error 1 Cheers, Michael
Can't install Happy 1.5 binary on Solaris
Help me, please! I'm trying to install the binary distribution of happy 1.5 on SunOS 5.5.1. I've done: ./configure --prefix=/usr/local/ghc-3.02 and it seems OK. Now I do: make install SHELL=/usr/local/bin/bash and make outputs a string of commands that look perfectly reasonable. However, nothing happens at all. No directories are created, no binaries are copied, nothing. The /usr/local/ghc-3.02 directory is untouched. I've tried to figure out why this is, but I'm mystified. I'm using GNU make 3.75. The make output is attached. BTW, my aim is to compile ghc-3.02 on Solaris; I've now built it successfully on Linux. Thanks for any help, Tony Antony Bowers, Department of Computer Science, University of Bristol, UK. http://www.cs.bris.ac.uk/~bowers/ ./mkdirhier /usr/local/ghc-3.02/bin (cd lib/sparc-sun-solaris2/happy-1.5; find . -type d -exec sh -c '../../.././mkdirhier $0 /usr/local/ghc-3.02/lib/happy-1.5/$0' {} \; ) (cd share/happy-1.5; find . -type d -exec sh -c '../.././mkdirhier /usr/local/ghc-3.02/share/happy-1.5/$0' {} \; ) for i in happy ; do \ ./install-sh -c -m 755 bin/sparc-sun-solaris2/happy-1.5/$i /usr/local/ghc-3.02/bin; \ done; for i in happy ""; do \ if [ "x$i" != "x" ]; then\ ( cd /usr/local/ghc-3.02/bin; \ rm -f $i-1.5; \ mv $i $i-1.5; \ ln -s $i-1.5 $i \ ); \ fi; \ done (cd lib/sparc-sun-solaris2/happy-1.5; find . -type f -exec sh -c 'cp $0 /usr/local/ghc-3.02/lib/happy-1.5/$0' {} \; ) (cd share/happy-1.5; find . -type f -exec sh -c './install-sh -c -m 644 $0 /usr/local/ghc-3.02/share/happy-1.5/$0' {} \; )
still no happy
in my on-going drama to build happy, i can successfully gmake boot and gmake, but when ghc-0.29 tries to build the executable its missing a few symbols: ghc-0.29 -o happy.bin -cpp -fhaskell-1.3 -fglasgow-extsVersion.o GenUtils.o Set.o ParseMonad.o Lexer.o AbsSyn.o Grammar.o Parser.o First.o LALR.o Target.o ProduceCode.o Info.o GetOpt.o Main.o /usr/ucb/ld: Unsatisfied symbols: PerformGC_wrapper (data) Ind_info (data any ideas? ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c Version.hs -o Version.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c GenUtils.lhs -o GenUtils.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c Set.lhs -o Set.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c ParseMonad.lhs -o ParseMonad.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c Lexer.lhs -o Lexer.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c AbsSyn.lhs -o AbsSyn.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c Grammar.lhs -o Grammar.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -Onot -c Parser.hs -o Parser.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c First.lhs -o First.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c LALR.lhs -o LALR.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c Target.lhs -o Target.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c ProduceCode.lhs -o ProduceCode.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c Info.lhs -o Info.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c GetOpt.lhs -o GetOpt.o -osuf o ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -c Main.lhs -o Main.o -osuf o "Main.lhs", line 93: _scc_ (`set [profiling] cost centre') ignored "Main.lhs", line 111: _scc_ (`set [profiling] cost centre') ignored "Main.lhs", line 112: _scc_ (`set [profiling] cost centre') ignored "Main.lhs", line 113: _scc_ (`set [profiling] cost centre') ignored "Main.lhs", line 114: _scc_ (`set [profiling] cost centre') ignored "Main.lhs", line 116: _scc_ (`set [profiling] cost centre') ignored "Main.lhs", line 117: _scc_ (`set [profiling] cost centre') ignored "Main.lhs", line 118: _scc_ (`set [profiling] cost centre') ignored "Main.lhs", line 119: _scc_ (`set [profiling] cost centre') ignored "Main.lhs", line 120: _scc_ (`set [profiling] cost centre') ignored ghc-0.29 -o happy.bin -cpp -fhaskell-1.3 -fglasgow-extsVersion.o GenUtils.o Set.o ParseMonad.o Lexer.o AbsSyn.o Grammar.o Parser.o First.o LALR.o Target.o ProduceCode.o Info.o GetOpt.o Main.o /usr/ucb/ld: Unsatisfied symbols: PerformGC_wrapper (data) Ind_info (data) collect2: ld returned 1 exit status gmake[1]: *** [happy.bin] Error 1 gmake: *** [all] Error 2
Re: still no happy
Byron Cook [EMAIL PROTECTED] writes: in my on-going drama to build happy, i can successfully gmake boot and gmake, but when ghc-0.29 tries to build the executable its missing a few symbols: ghc-0.29 -o happy.bin -cpp -fhaskell-1.3 -fglasgow-extsVersion.o GenUtils.o Set.o ParseMonad.o Lexer.o AbsSyn.o Grammar.o Parser.o First.o LALR.o Target.o ProduceCode.o Info.o GetOpt.o Main.o /usr/ucb/ld: Unsatisfied symbols: PerformGC_wrapper (data) Ind_info (data That's extremely weird. Those are RTS symbols, and should be linked in from libHSrts.a. Could you do a 'gmake EXTRA_HC_OPTS=-v' and send me the output? Cheers, Simon -- Simon Marlow [EMAIL PROTECTED] University of Glasgow http://www.dcs.gla.ac.uk/~simonm/ finger for PGP public key
Re: ghc needs happy, happy needs happy. i dont have happy, im not happy
Byron Cook [EMAIL PROTECTED] writes: I'm trying to install GHC-2.10 from sources on HP-UX $ uname -a HP-UX hp182 B.10.01 A 9000/770 but it says it needs happy-1.4 so i grabbed happy-1.5 and tryed to install it, but it needs happy too. Just do "touch Parser.hs" in fptools/happy/src, and it should build happily. Cheers, Simon -- Simon Marlow [EMAIL PROTECTED] University of Glasgow http://www.dcs.gla.ac.uk/~simonm/ finger for PGP public key
ghc needs happy, happy needs happy. i dont have happy, im not happy
I'm trying to install GHC-2.10 from sources on HP-UX $ uname -a HP-UX hp182 B.10.01 A 9000/770 but it says it needs happy-1.4 so i grabbed happy-1.5 and tryed to install it, but it needs happy too. which version of happy does happy-1.5 need to install? and which version will that version need? help :-) your good friend, - Byron
Re: happy bug
Marc van Dongen= [EMAIL PROTECTED] writes: I would like to report the following Happy bug. With rules of the form: This :: { Type } This: Is A Rule{ let a = 1 b = 2 in $1 } Happy generates .. (let a = 1 b = 2 .. Thanks for the report. Happy doesn't maintain the indentation of the code inside curly braces (which is a bug, it's on my list of things to fix) but the workaround is easy: This: Is A Rule{ let { a = 1; b = 2 } in $1 } Cheers, Simon -- Simon Marlow [EMAIL PROTECTED] University of Glasgow http://www.dcs.gla.ac.uk/~simonm/ finger for PGP public key
happy bug
Hi there, I would like to report the following Happy bug. With rules of the form: This :: { Type } This: Is A Rule{ let a = 1 b = 2 in $1 } Happy generates .. (let a = 1 b = 2 .. Which isn't proper Haskell. Regards, Marc van Dongen
happy-1.3 bug, not attached grammar
Hmm. I tried to attach the .ly file to the bug report just sent, but that didn't seem to work. So here it is (not) again: - Ebnf2psParser.ly --- happy grammar for Ebnf2ps input (1) A happy specification for a grammar in EBNF (2) A happy specification for the happy input language (3) A happy specification for the yacc input language { module Ebnf2psParser (theEbnfParser, theHappyParser, theYaccParser) where import AbstractSyntax import Lexer import List } %name ebnf2psParser %tokentype { Token' } %token EBNF { EbnfInput } HAPPY{ HappyInput} YACC { YaccInput } id_tok { Ident' $$ } cid_tok { CIdent' $$} ";" { SemiColon } ":" { Colon } "::" { DoubleColon } "%%" { DoublePercent } "%" { Percent } "|" { Bar } "{" { OpenBrace } "}" { ClosingBrace } "." { Dot } "=" { Equal } "+" { Plus } "[" { OpenBrack } "]" { ClosingBrack } "(" { OpenParen } ")" { ClosingParen } "/" { Slash } any_string { String' $$} any_symbol { Symbol' $$} number { Number' _ } Scheint in der neuen Happy-Version nicht mehr verfugbar zu sein. In der Dokumentation wird jedenfalls darauf hingewiesen, da? das newline-token in zukunftigen Versionen moglicherweise abgeschafft wird. %newline{ Newline } %% ebnf2psparse:: { [Production] } ebnf2psparse: EBNF ebnfInput { $2 } | HAPPY happyInput { $2 } | YACC yaccInput { $2 } (1) happy specification for a grammar in EBNF ebnfInput :: { [Production] } ebnfInput : ebnfProductions{ $1 } ebnfProductions :: { [Production] } ebnfProductions : ebnfProduction { [$1] } | ebnfProductions ebnfProduction { $1 ++ [$2] } ebnfProduction :: { Production } ebnfProduction : ebnfNonterminal ebnfOptString "=" ebnfTerm ";" { ProdProduction $1 $2 $4 } ebnfOptString :: { [String] } ebnfOptString : any_string { [$1] } | { [] } ebnfNonterminal :: { String } ebnfNonterminal : id_tok { $1 } ebnfTerm:: { Production } ebnfTerm: ebnfFactors{ ProdTerm $1 } ebnfFactors :: { [Production] } ebnfFactors : ebnfFactor { [$1] } | ebnfFactors "|" ebnfFactor { $1 ++ [$3] } ebnfFactor :: { Production } ebnfFactor : ebnfExtAtoms { ProdFactor $1 } ebnfExtAtoms:: { [Production] } ebnfExtAtoms: ebnfExtAtom{ [$1] } | ebnfExtAtom ebnfExtAtoms { $1 : $2 } ebnfExtAtom :: { Production } ebnfExtAtom : ebnfAtom { $1 } | ebnfAtom "/" ebnfAtom { ProdRepeatWithAtom $1 $3 } | ebnfAtom "+" { ProdRepeat1 $1 } ebnfAtom:: { Production } ebnfAtom: id_tok { ProdNonterminal $1 } | any_string { ProdTerminal $1 } | "(" ebnfTerm ")" { $2 } | "[" ebnfTerm "]" { ProdOption $2 } | "{" ebnfTerm "}" { ProdRepeat $2 } (2) happy specification for the happy input language happyInput :: { [Production] } happyInput : happyOptCode happyTokInfos "%%" happyRules happyOptCode { happyPrepare $2 $4 } happyRules :: { [Production] } happyRules : happyRule happyRules { $1 : $2 } | happyRule { [$1] } happyRule:: { Production } happyRule: id_tok "::" happyCode happyHRule { ProdProduction $1 [] $4 } | id_tok ":" happ
Re: 100 MB of heap exhausted when compiling Happy
When compiling Happy-1.3's Main.lhs with optimization turned on, 100 MB of heap space aren't enough for the compiler. It crashes after several hours of compilation. When optimization is turned off, it finishes after some minutes. I would consider this a bug. I consider it a bug too! We knew about it, but havn't spent the time to nail it down yet. It's in our gunsights though. Simon
Re: 100 MB of heap exhausted when compiling Happy
Volker Wysk [EMAIL PROTECTED] writes: When compiling Happy-1.3's Main.lhs with optimization turned on, 100 MB of heap space aren't enough for the compiler. It crashes after several hours of compilation. When optimization is turned off, it finishes after some minutes. I would consider this a bug. You're dead right its a bug. The official workaround is to use the -fno-update-analysis flag. -- Simon Marlow [EMAIL PROTECTED] University of Glasgow http://www.dcs.gla.ac.uk/~simonm/ finger for PGP public key
Re: Happy breaks ghc (again).
To partially answer my own question... Big problems with some output from Happy 1.2-alpha [...] I'm quite keen to get it sorted out and/or worked around. Easiest work-around is not to use "happy -g" output, which I neglected to mention I was using. Evidently some sort of type-checking problem due to unboxed thingies... Slainte, Alex.
Re: Not very Happy.
Alex | Further to my previous comments about ghc-2.04 and Happy output, I | can report that having mangled happy-0.9 output to work with 1.4ish | arrays, the situation is more dire yet. For the same happy input | program as previously reported, ghc _really_ struggles to compile | the -a output -- with a 100Mb heap under Solaris, it doesn't get past | the DeSugar phase. (I'd tell you what happens with a 120Mb heap, but | it's still trashing one of our Ultras quite senseless.) Must be a | space-leak, surely? You have a list of 60,000 Ints, on which GHC was doing its full-blown overloading thing. We used this as an excuse to modify the type checker so that the main type-checking function now has type (more or less) tcExpr :: Expr - Type - TcM Expr' instead of the old tcExpr :: Expr - TcM (Expr', Type) That is, the type checker takes the expected type of the epxression, rather than returning the type of the epxression as a result. This means that we can take advantage of information from type signatures, and from the function that's applied to this particular argument expression. Apart from reducing the constant factor on programs like yours, I fancy that error messages will become more informative. Net result: your program has a max residency of 37M instead of 120M. That's still far too much, but it's a worthwhile improvement.I don't regard this saga as over by any means. This'll be in 2.05 which we plan to toss over the fence (source only, only partly tested) tomorrow. Simon
Happy bites the dust again
Here's one for the weekend at GHC HQ:;-) Consider the following *rather* short excerpt from Happy: - Foo.hs - module Foo where data Bar = Baz | Faz deriving Eq - Main.hs - module Main where import Foo main = putStr (if Baz == Faz then "Hu?" else "OK!") panne@liesl ghc -c -O -prof -auto-all Foo.hs Module version unchanged at 1 panne@liesl ghc -c -O -prof -auto-all Main.hs Module version unchanged at 1 panne@liesl ghc -O -prof -auto-all Foo.o Main.o Main.o(.text+0x10c): undefined reference to `CC_FooZdcon2tagZuBarZh_struct' Main.o(.text+0x112): undefined reference to `CC_FooZdcon2tagZuBarZh_struct' Main.o(.text+0x1d3): undefined reference to `CC_FooZdcon2tagZuBarZh_struct' Main.o(.text+0x1d9): undefined reference to `CC_FooZdcon2tagZuBarZh_struct' Crucial ingredients: Using Eq, -O and -auto-all. Setup as usual (ghc-2.04pl2 + the *very* latest patches, Linux) It seems that the complexity of cross-module inlining with optimizations slips a little bit out of hands in recent releases... -- Sven PanneTel.: +49/89/2178-2235 LMU, Institut fuer Informatik FAX : +49/89/2178-2211 LFE Programmier- und Modellierungssprachen Oettingenstr. 67 mailto:[EMAIL PROTECTED]D-80538 Muenchen http://www.pms.informatik.uni-muenchen.de/mitarbeiter/panne
Re: Compiling Happy-1.2alpha with -O
Sven Panne [EMAIL PROTECTED] writes: Compiling the brand-new Happy-1.2alpha with the not-so-brand-new-anymore ghc-2.04pl2 (Linux) with -O seems to loop in the Stg2Stg pass, consuming more and more memory: make -f Makefile.standalone HC="ghc -H60M -dshow-passes" OPT="-O" [... everything is fine up to now ...] rm -f Main.o ghc -H60M -dshow-passes -c -O -cpp -fhaskell-1.3 -fglasgow-exts -H8M -hi-diffs -Rghc-timing Main.lhs -o Main.o ... GHC's heap exhausted; while trying to allocate 20 bytes in a 6000-byte heap; use the `-Hsize' option to increase the total heap size. make: *** [Main.o] Error 1 He's right you know - I just reproduced this. However, on a hunch I added the -fno-update-analysis flag, and it went through fine. Looks like the update analyser has rotted again. Cheers, Simon -- Simon Marlow [EMAIL PROTECTED] University of Glasgow http://www.dcs.gla.ac.uk/~simonm/ finger for PGP public key