Sun Feb 19 20:43:22 PST 2012  John Meacham <[email protected]>
  * fix deriving rules for read/show when it comes to labels

Sun Feb 19 21:06:16 PST 2012  John Meacham <[email protected]>
  * add prototype for gc_alloc
New patches:

[fix deriving rules for read/show when it comes to labels
John Meacham <[email protected]>**20120220044322
 Ignore-this: 20c9c89ae066716fe3ec8eb4d37c6034
] hunk ./src/DerivingDrift/Drift.hs 19
 driftDerive hsModule = if null ss then [] else hsModuleDecls hsMod
   where
     --hsMod = case parse (unlines ss) (SrcLoc (show $ hsModuleName hsModule) 1 1) 0 [] of
-    hsMod = case snd $ runParser parse (unlines ss)  of
+    hsMod = case snd $ runParser parse ss  of
         ParseOk e -> e
hunk ./src/DerivingDrift/Drift.hs 21
-        ParseFailed sl err -> error $ "driftDerive: " ++ show sl ++ err
-    ss = [ n | Just n <- map driftDerive' $ hsModuleDecls hsModule, any (not . isSpace) n ]
+        ParseFailed sl err -> error $ "internal parse error(driftDerive): " ++ show sl ++ err  ++ "\n" ++ ss
+    ss = unlines [ n | Just n <- map driftDerive' $ hsModuleDecls hsModule, any (not . isSpace) n ]
 
 driftDerive' :: Monad m => HsDecl -> m String
 driftDerive' HsDataDecl { hsDeclName = name, hsDeclArgs = args, hsDeclCons = condecls, hsDeclDerives = derives } = do
hunk ./src/DerivingDrift/StandardRules.hs 114
 				    fsep (sepWith s' b'),comp,showChar '}']
 	c = showString constructor
 	b = map (\x -> fsep[text (q v_showsPrec), text "10", x]) (varNames types)
-	b' = zipWith (\x l -> fsep[showString l,comp,showChar '=',comp,x])
+	b' = zipWith (\x l -> fsep [showString l, comp, showString " = ", comp, x])
 			            b (map getIdent labels)
 	s = fsep [comp,showChar ' ', comp]
 	s' = fsep [comp,showChar ',',comp]
hunk ./src/DerivingDrift/StandardRules.hs 146
 	final v = [fsep[tup v rest,from,readsPrec,ip]]
 	readRecord = let
 		f lab v = [
-			fsep [tup (text $ show lab) ip,lex],
+			fsep [tup (tshow $ show (toUnqualified lab)) ip,lex],
 			fsep [tup (text $ show "=") ip,lex],
 			fsep [tup v ip ,from,readsPrec,ip]]
 		openB = fsep [tup (text $ show "{") ip,lex]
hunk ./src/DerivingDrift/StandardRules.hs 165
 	vars = varNames types
 	ip = text "inp"
 	rest = text "rest"
-	tup x y = parens $ fsep [text (u dc_Pair), x, y]
+	tup x y = parens $ fsep [x <> char ',', y]
 	lex = fsep[from,text (q v_lex),ip]
 	readsPrec = fsep [text (q v_readsPrec),text "10"]
 	from = text "<-"
hunk ./src/DerivingDrift/StandardRules.hs 170
 
+
+tshow x = text (show x)
 ----------------------------------------------------------------------
 
 -- Enum -- a lot of this code should be provided as default instances,
[add prototype for gc_alloc
John Meacham <[email protected]>**20120220050616
 Ignore-this: 444b34148332459dc0e3d32b7c55d3e0
] hunk ./rts/rts/gc_jgc.h 28
 struct s_arena *new_arena(void);
 struct s_cache *find_cache(struct s_cache **rsc, struct s_arena *arena,
                            unsigned short size, unsigned short num_ptrs);
+void *(gc_alloc)(gc_t gc,struct s_cache **sc, unsigned count, unsigned nptrs);
 void gc_add_root(gc_t gc, void * root);
 
 #define gc_frame0(gc,n,...) void *ptrs[n] = { __VA_ARGS__ }; \

Context:

[disabled buggy unused transformation in type analysis pass
John Meacham <[email protected]>**20120220031442
 Ignore-this: 8ad84739daff7f4faff0ba251898ea1a
] 
[move debugging routines to rts/profile.c
John Meacham <[email protected]>**20120217052015
 Ignore-this: d2e087faf6e3408dc135fd905d85244b
] 
[fix rts unit tests
John Meacham <[email protected]>**20120217035045
 Ignore-this: 460d7eadde056908b668ea27d5a69aa5
] 
[export gc_alloc
John Meacham <[email protected]>**20120217002235
 Ignore-this: dcb70b3ad303f0343147b4e1d6d413b9
] 
[Makes the class deriving mechanism more robust:
[email protected]**20120216214017
 Ignore-this: 6d93691849d255c310b2af7098572ea8
  - the names of the classes to be derived may be given qualified. 
  - the functions from the Prelude internally used need not be in scope
    and won't clash with other bindings.
] 
[Moved Jhc.List.drop to module Jhc.Basics (since it is used in instance deriving)
[email protected]**20120214222939
 Ignore-this: f95d4818bad6d79d8fc7566ee0912714
] 
[The typechecker now verifies that the main function has a type that can be unified with IO a. This is required by the Haskell 98 Report.
[email protected]**20120211050446
 Ignore-this: 8a1d8ca36929c0de0fb4357538ea6c5b
 
 Failing to do so allows both to accept invalid programs like:
 
 > main :: [()]
 > main = return ()
 
 and to reject valid programs like:
 
 > main = return ()
 
] 
[Improves the error message shown when a monomorphic pattern has a polymorphic type that cannot be defaulted. 
[email protected]**20120211045931
 Ignore-this: efd70b7535eb0444148aabdbe96ed0b9
 
 The previous error message seemed more like an internal error ("withDefaults.ambiguity: ...")
] 
[fix for building rts in different modes, profile,debug,windows
John Meacham <[email protected]>**20120216201402
 Ignore-this: 39b08c82b7239beaeaa6e77a3b986cd4
] 
[move rest of rts into seperate c files rather than including it directly.
John Meacham <[email protected]>**20120216090215
 Ignore-this: d0bf719a38e306f78e182a5c0107573d
] 
[add pragmaExp to the lexer/parser
John Meacham <[email protected]>**20120216044837
 Ignore-this: 77393cb5bdd28fba526d57d26ac099b8
] 
[update documentation with new extensions
John Meacham <[email protected]>**20120214172359
 Ignore-this: 2f412f29f20127ce3f97f200674ed8b6
] 
[fixes for android
John Meacham <[email protected]>**20120213150333
 Ignore-this: cf6df59b212e3402ec21507410485270
] 
[make += work with '-m' command line options
John Meacham <[email protected]>**20120213102300
 Ignore-this: 36cb4039cd34ba73d2cc973b7c00798b
] 
[move jhc_rts_alloc to gc_none
John Meacham <[email protected]>**20120213100906
 Ignore-this: 1c2e9028d72127acd5a448971266f627
] 
[added rts/rts_support, cleaned up rts code.
John Meacham <[email protected]>**20120213070644
 Ignore-this: 79533860331fbd02057748e3d1b81666
] 
[make 'Requires' a simple set, include the calling convention with the requirements.
John Meacham <[email protected]>**20120212053838
 Ignore-this: b7fa6f8ece79c96073d8638a876456de
] 
[move slub.c and jhc_jgc.* to rts directory
John Meacham <[email protected]>**20120212040246
 Ignore-this: a40354544b8908732c733bf8a38e7e68
] 
[add unit tests for stableptr
John Meacham <[email protected]>**20120212031148
 Ignore-this: 17b41baeec806fb53ca2c10c6489097
] 
[reorganize rts/ directory, add README for it
John Meacham <[email protected]>**20120212022718
 Ignore-this: c8a9f067696233958757830b62a7264b
] 
[add rts/test directory
John Meacham <[email protected]>**20120212004706
 Ignore-this: 1e6d0cb4ba809a1d6089d04704d5a60f
] 
[allow being explicit in export/import lists by specifying 'kind', 'class', 'type', or 'data'. add PTS rule to allow proper typing of Complex_
John Meacham <[email protected]>**20120211052157
 Ignore-this: 12155286186022f896d3474a2bb5d23a
] 
[fix Options.hs makefile dependency
John Meacham <[email protected]>**20120211024909
 Ignore-this: a0742d7ce4eba41314741b6ca2d6498d
] 
[added user defined kind extension
John Meacham <[email protected]>**20120211042248
 Ignore-this: ded329985c5c81aa8c4612f7aa19559b
] 
[Add missing src/Options.hs to jhc tarball
Sergei Trofimovich <[email protected]>**20120209065334
 Ignore-this: dfc50115ee26986ab2d303a462cd29b9
] 
[added mingw32-gcc to MINGW search
Sergei Trofimovich <[email protected]>**20110414073938
 Ignore-this: 87fa46f0e4532663a9d92930c9c38152
] 
[add c-- types for complex and vector values
John Meacham <[email protected]>**20120210051026
 Ignore-this: 4a1e4c8cec01f73b75913622c22fa55
] 
[add documentation for the multi-return ccall extension, clean up code.
John Meacham <[email protected]>**20120209201351
 Ignore-this: 47504b653ee9f71bde40e91959238292
] 
[add extension to allow multiple return values from c functions
John Meacham <[email protected]>**20120209142228
 Ignore-this: 51e4a3f9ca80ff2eae7f21376f0a0992
] 
[fix obscure error message for invalid instance reported by roman
John Meacham <[email protected]>**20120209114221
 Ignore-this: 98d60e20cb63caaebbe1269887160b9f
] 
[remove APrim type, use Prim directly, clean up corresponding cruft.
John Meacham <[email protected]>**20120209104920
 Ignore-this: 8a3fbeea72e7f52809a3468df2b8b228
] 
[turn ExtType into a real abstract type
John Meacham <[email protected]>**20120209100704
 Ignore-this: c802a07fee0f2461cca19aa28f99ff61
] 
[add 'capi' foreign function call type, simplify type of E.FromHs monad, check for more FFI related errors
John Meacham <[email protected]>**20120209091611
 Ignore-this: 1945b5336e6001d6da6cd63a77bd1efd
] 
[add md5lazyIO, check for bad paths in createTempFile
John Meacham <[email protected]>**20120209091527
 Ignore-this: f9e5f0dafc9615d5c5c50cb49829c5a5
] 
[add foreign types, interpret Ptr when creating external C types
John Meacham <[email protected]>**20120209090647
 Ignore-this: c49bea3938e2edabda9d7528cfb1121a
] 
[Add some more exotic primitive ops, ffs,clz,ctz,byteswap,popcount,parity.
John Meacham <[email protected]>**20120209070848
 Ignore-this: b61b1c08db35ccad33f24536b99913df
] 
[jhc.spec fixes
John Meacham <[email protected]>**20120209015329
 Ignore-this: 64488edc34893a734f81b1c01c0b1ff4
] 
[TAG 0.8.0
John Meacham <[email protected]>**20120208020026
 Ignore-this: 2d0d963331a43650879ae72d81ff62e8
] 
Patch bundle hash:
69a78e8b89e2ff679db3770ef85a35e87144c0fe
_______________________________________________
jhc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/jhc

Reply via email to