Sat Nov 14 22:48:29 CET 2009 jhc@henning-thielemann.de * HsParser, Lexer: ignore optimizer phase information for INLINE pragmas as available in GHC ToDo: emit warning that phase information is ignored New patches: [HsParser, Lexer: ignore optimizer phase information for INLINE pragmas as available in GHC jhc@henning-thielemann.de**20091114214829 Ignore-this: 2a7ac0d6484724bd19be7148e377163a ToDo: emit warning that phase information is ignored ] hunk ./src/FrontEnd/HsParser.y 66 USTRING { UStringTok $$ } PRAGMAOPTIONS { PragmaOptions $$ } PRAGMASTART { PragmaStart $$ } + PRAGMAINLINE { PragmaInline $$ } PRAGMARULES { PragmaRules $$ } PRAGMASPECIALIZE { PragmaSpecialize $$ } PRAGMAEND { PragmaEnd } hunk ./src/FrontEnd/HsParser.y 368 : signdecl { $1 } | fixdecl { $1 } | valdef { $1 } + | pragmainline { $1 } | pragmaprops { $1 } hunk ./src/FrontEnd/HsParser.y 380 signdecl :: { HsDecl } : vars srcloc '::' ctype { HsTypeSig $2 (reverse $1) $4 } +pragmainline :: { HsDecl } + : PRAGMAINLINE srcloc optphasesn vars PRAGMAEND { HsPragmaProps $2 $1 $4 } + +optphasesn :: { (Bool, Maybe Int) } + : '~' optphases { (True, $2) } + | optphases { (False, $1) } + +optphases :: { Maybe Int } + : '[' INT ']' { (Just (readInteger $2)) } + | { Nothing } + pragmaprops :: { HsDecl } : PRAGMASTART srcloc vars PRAGMAEND { HsPragmaProps $2 $1 $3 } hunk ./src/FrontEnd/Lexer.hs 48 | StringTok String | UStringTok String | PragmaOptions [String] + | PragmaInline String -- also for NOINLINE | PragmaRules Bool | PragmaSpecialize Bool | PragmaStart String hunk ./src/FrontEnd/Lexer.hs 659 -- pragmas which just have a simple string based start rule. pragmas_std = [ - ["INLINE"], ["NOETA"], ["SUPERINLINE"], hunk ./src/FrontEnd/Lexer.hs 661 - ["NOINLINE","NOTINLINE"], ["MULTISPECIALIZE", "MULTISPECIALISE"], ["SRCLOC_ANNOTATE"] ] hunk ./src/FrontEnd/Lexer.hs 667 -- pragmas with a special starting token pragmas_parsed = [ + (["INLINE"],PragmaInline "INLINE"), + (["NOINLINE","NOTINLINE"],PragmaInline "NOINLINE"), (["RULES","RULE","RULES_JHC","RULE_JHC"],PragmaRules False), (["CATALYST","CATALYSTS"],PragmaRules True), (["SPECIALIZE", "SPECIALISE"],PragmaSpecialize False), Context: [use appropriate mingw gcc in targets.ini David Roundy **20090923113532 Ignore-this: b57826eb6a9bc173787e757978da84aa6bca48a5 ] [add System.IO.Pipe. David Roundy **20090920222021 Ignore-this: 41e186c1bb31ebcfea1dbaade4198b52f7cfefc6 ] [allow selecting libraries by hash or name-version John Meacham **20090916092017 Ignore-this: 791898f2515ce09fdf14bcfa55374d0f ] [removed use of RecordWildCards, which is buggy in ghc 6.8. David Roundy **20090909104653 Ignore-this: a25acfe97b9d49f3d671e7de713398c42d480084 ] [change description of -c command. David Roundy **20090909214755 Ignore-this: 9dfd9feacaae12d3a9347795c9218a3edccdca97 ] [add warnings not to edit auto-generated Prim.hs file. David Roundy **20090905163828 Ignore-this: 8ea3a7ae45154a7065dd3c6cca027d21b0fd6d14 ] [expand --list-libraries output with lots of new info John Meacham **20090908001803 Ignore-this: d2eb4972842f4d2537723145b8f4aa46 ] [add Util.YAML John Meacham **20090908000054 Ignore-this: 710d1cc5bb1eb25a071a1303a0a295ae ] [perform dependency analysis on type synonyms before expansion, detect recursive synonyms. John Meacham **20090907110339 Ignore-this: dbdc78dd0f53b0d4d88f5bde202859ce ] [add Ord instances for 3 and 4-tuples John Meacham **20090906093322 Ignore-this: b5501f8a6af7447f5270c9929099c4a0 ] [fix ord instance for lists John Meacham **20090906015622 Ignore-this: 7474720527a381364a95f637fdde4be7 ] [have the ho cache names depend on the compiler version, to avoid cache poisoning by fixed bugs John Meacham **20090906001329 Ignore-this: 92b4b18987980ccbcad1acc382049db1 ] [add 'constraints' test from nobench to regression tests John Meacham **20090905231129 Ignore-this: 968420a6871dedfe09835d329dea7b4d ] [allow deadcode and node analysis to see constant partial applications that are arguments to a store John Meacham **20090905224714 Ignore-this: f046a8c860f832b6185d8868fa474c0 ] [bump version number John Meacham **20090905112620 Ignore-this: 94f12cb57766a0ad6087282b05ddcf3e ] [enable storage analysis to enable allocation on the stack John Meacham **20090905112613 Ignore-this: 698cba1f286da15511ab00db0f641348 ] [clean up fixIO David Roundy **20090905130434 Ignore-this: a54d45a08fed774311a62f397aa277d763c9b55d ] [allow C generator to handle unknown values properly John Meacham **20090905070241 Ignore-this: 45b178166521d1415a83296a417637ad ] [fix desugaring inside of list comprehensions John Meacham **20090905063231 Ignore-this: 45bfed7194caf9b2d121a8c6ee5eef3d ] [use strict writer monad as suggested by Taral John Meacham **20090905061722 Ignore-this: 4ad850e2a1eaa59b18100781892a002 ] [fix strict newtypes bug John Meacham **20090905061645 Ignore-this: 5def4f36458cb6dbec327fe3bdcb3979 ] [clean ups John Meacham **20090905042239 Ignore-this: d586cddf774cd044103288aa1554b6cd ] [fix instance of U2U primitive not being processed properly John Meacham **20090905042149 Ignore-this: 24858b196abd2eb0d1362edf16c85894 ] [add regression test for strict newtype bug John Meacham **20090905042131 Ignore-this: d1d47e60b8e131aec734ec755026fe7d ] [start adding storage analysis support John Meacham **20090905015718 Ignore-this: 2a1f36882b7824cbb4f40403afd46ec1 ] [bug updates John Meacham **20090905010650 Ignore-this: fda7e81bf1e7d0323adfd175babb4f02 ] [add mockbuild.sh to repo John Meacham **20090902002058 Ignore-this: 3d00049b26da191f4950b973c8e36df ] [ add a lot of new regression tests, many bugs that the lhc developers found, make regress.prl check the 'mustfail' status of tests John Meacham **20090902002017 Ignore-this: 455861464ee8627b72f3dc343d7447e9 ] [include $PREFIX/{share,lib}/{jhc,jhc-$SHORTVERSION} in search path. David Roundy **20090902162853 Ignore-this: 640fb797a3d27327bd6cb9f4333b5793cf974529 I find it a little annoying that the default search path doesn't include the location where I installed jhc, except the ../share/jhc-0.7 directory, which I'd rather not put stuff in, so I can easily delete all non-standard packages. I also took the liberty of reordering the default search path, so that all the ~/* entries would be before all the /usr/local/* entries, etc. ] [give nicer error message on jhc --show-ho foo David Roundy **20090902162143 Ignore-this: 187d8cf167aa67786882e458400edc2b20c4a6db ] [make type of System.Info.compilerVersion match that of ghc. David Roundy **20090902124418 Ignore-this: cc1d7ba17598da69f8dc7d2d96c3d266811413c0 ] [introduce System.Exit and System.Cmd in base. David Roundy **20090831150645 Ignore-this: 0b2496708bc3741a0500d796cb144939cc868578 ] [fix grammatical error in warning message. David Roundy **20090902192312 Ignore-this: ff2af3d11325d300c217ac7776b82097bbb2c3a9 ] [fix bug when 'do' expressions used with infix expressions, add test case to regression John Meacham **20090901180831 Ignore-this: 3feaf0ddff33116c54017f18d8fb372a ] [TAG 0.7.2 John Meacham **20090901063747 Ignore-this: 15bfbae8da4d333a8d2777e7e49144a0 ] Patch bundle hash: 9d1bb48ec45fb1cc4680b23f249a66f409b4f9a4