- rel 2 auto/th/camlp5-6_02_2-2
authorJan Rękorajski <baggins@pld-linux.org>
Thu, 7 Apr 2011 12:03:10 +0000 (12:03 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
- added official patches

Changed files:
    camlp5.spec -> 1.5
    patch-6.02.2-1 -> 1.1
    patch-6.02.2-2 -> 1.1
    patch-6.02.2-3 -> 1.1

camlp5.spec
patch-6.02.2-1 [new file with mode: 0644]
patch-6.02.2-2 [new file with mode: 0644]
patch-6.02.2-3 [new file with mode: 0644]

index 6f9852a40cfe90b2a33b9afd21b6374ae1dfe10c..507a4d1f00cdb238a9bfb8a47167393758434c10 100644 (file)
@@ -2,7 +2,7 @@ Summary:        Objective Caml Preprocessor
 Summary(pl.UTF-8):     Preprocesor OCamla
 Name:          camlp5
 Version:       6.02.2
-Release:       1
+Release:       2
 License:       distributable
 Group:         Development/Languages
 Source0:       http://pauillac.inria.fr/~ddr/camlp5/distrib/src/%{name}-%{version}.tgz
@@ -10,6 +10,10 @@ Source0:     http://pauillac.inria.fr/~ddr/camlp5/distrib/src/%{name}-%{version}.tgz
 #Source1:      http://pauillac.inria.fr/~ddr/camlp5/doc/pdf/%{name}-%{version}.pdf
 Source1:       http://pauillac.inria.fr/~ddr/camlp5/doc/pdf/%{name}-6.00.pdf
 # Source1-md5: b241eabfeb48f22b0fbd3e497198a76a
+# http://pauillac.inria.fr/~ddr/camlp5/distrib/src/
+Patch0:                patch-6.02.2-1
+Patch1:                patch-6.02.2-2
+Patch2:                patch-6.02.2-3
 URL:           http://caml.inria.fr/
 BuildRequires: db-devel >= 4.1
 BuildRequires: ocaml
@@ -58,6 +62,9 @@ Preprocesor OCamla - dokumentacja HTML.
 
 %prep
 %setup -q
+%patch0 -p0
+%patch1 -p0
+%patch2 -p0
 cp %{SOURCE1} doc/camlp4.pdf
 
 %build 
diff --git a/patch-6.02.2-1 b/patch-6.02.2-1
new file mode 100644 (file)
index 0000000..2cc27f6
--- /dev/null
@@ -0,0 +1,126 @@
+Index: CHANGES
+===================================================================
+retrieving revision 6.36
+retrieving revision 6.38
+diff -c -r6.36 -r6.38
+*** CHANGES    15 Mar 2011 12:36:08 -0000      6.36
+--- CHANGES    16 Mar 2011 16:52:42 -0000      6.38
+***************
+*** 1,3 ****
+--- 1,11 ----
++ Camlp5 Version 6.02.3:
++ ----------------------
++ 
++ * [16 Mar 11] Fixed bug: incorrect compilation of label patterns of the
++   form ~a:b (or ~{a = b} in revised syntax) in class declarations.
++ * [16 Mar 11] Fixed bug: error while printing label patterns ~a:b with
++   pr_o.cmo (error message "labels not pretty printed (in patt)").
++ 
+  Camlp5 Version 6.02.2:
+  ----------------------
+  
+Index: etc/pr_o.ml
+===================================================================
+retrieving revision 6.51
+diff -c -r6.51 pr_o.ml
+*** etc/pr_o.ml        15 Mar 2011 13:49:10 -0000      6.51
+--- etc/pr_o.ml        16 Mar 2011 15:18:58 -0000
+***************
+*** 1363,1369 ****
+        | <:patt< _ >> -> pprintf pc "_"
+        | <:patt:< ?{$_$} >> | <:patt:< ?{$_$ = $_$} >> | <:patt:< ?{$_$} >> |
+          <:patt:< ?{$_$ = ?{$_$ = $_$}} >> | <:patt:< ?{$_$ = $_$} >> |
+!         <:patt:< ~{$_$} >> | <:patt:< ~{$_$ = $_$} >> ->
+            error loc "labels not pretty printed (in patt)"
+        | <:patt< `$s$ >> ->
+            failwith "polymorphic variants not pretty printed; add pr_ro.cmo"
+--- 1363,1369 ----
+        | <:patt< _ >> -> pprintf pc "_"
+        | <:patt:< ?{$_$} >> | <:patt:< ?{$_$ = $_$} >> | <:patt:< ?{$_$} >> |
+          <:patt:< ?{$_$ = ?{$_$ = $_$}} >> | <:patt:< ?{$_$ = $_$} >> |
+!         <:patt:< ~{$list:_$} >> ->
+            error loc "labels not pretty printed (in patt)"
+        | <:patt< `$s$ >> ->
+            failwith "polymorphic variants not pretty printed; add pr_ro.cmo"
+Index: main/ast2pt.ml
+===================================================================
+retrieving revision 6.32
+diff -c -r6.32 ast2pt.ml
+*** main/ast2pt.ml     15 Mar 2011 12:36:08 -0000      6.32
+--- main/ast2pt.ml     16 Mar 2011 15:57:40 -0000
+***************
+*** 1326,1341 ****
+        [ Some pcl_fun ->
+            match uv lppo with
+            [ [(p, po)] -> do {
+-               let _ =
+-                 match uv po with
+-                 [ Some _ -> error loc "label not implemented in that case 1"
+-                 | None -> None ]
+-               in
+                let lab =
+                  match p with
+                  [ PaLid _ s -> uv s
+                  | p -> error loc "label not implemented in that case 2" ]
+                in
+                mkpcl loc (pcl_fun lab None (patt p) (class_expr ce))
+            }
+          | [] | [_ :: _] -> error ploc "case class multi lab not yet impl" ]
+--- 1326,1341 ----
+        [ Some pcl_fun ->
+            match uv lppo with
+            [ [(p, po)] -> do {
+                let lab =
+                  match p with
+                  [ PaLid _ s -> uv s
+                  | p -> error loc "label not implemented in that case 2" ]
+                in
++               let p =
++                 match uv po with
++                 [ Some p -> p
++                 | None -> p ]
++               in
+                mkpcl loc (pcl_fun lab None (patt p) (class_expr ce))
+            }
+          | [] | [_ :: _] -> error ploc "case class multi lab not yet impl" ]
+Index: ocaml_src/main/ast2pt.ml
+===================================================================
+retrieving revision 6.32
+diff -c -r6.32 ast2pt.ml
+*** ocaml_src/main/ast2pt.ml   15 Mar 2011 12:36:09 -0000      6.32
+--- ocaml_src/main/ast2pt.ml   16 Mar 2011 16:05:41 -0000
+***************
+*** 1522,1537 ****
+          Some pcl_fun ->
+            begin match uv lppo with
+              [p, po] ->
+-               let _ =
+-                 match uv po with
+-                   Some _ -> error loc "label not implemented in that case 1"
+-                 | None -> None
+-               in
+                let lab =
+                  match p with
+                    PaLid (_, s) -> uv s
+                  | p -> error loc "label not implemented in that case 2"
+                in
+                mkpcl loc (pcl_fun lab None (patt p) (class_expr ce))
+            | [] | _ :: _ -> error ploc "case class multi lab not yet impl"
+            end
+--- 1522,1537 ----
+          Some pcl_fun ->
+            begin match uv lppo with
+              [p, po] ->
+                let lab =
+                  match p with
+                    PaLid (_, s) -> uv s
+                  | p -> error loc "label not implemented in that case 2"
+                in
++               let p =
++                 match uv po with
++                   Some p -> p
++                 | None -> p
++               in
+                mkpcl loc (pcl_fun lab None (patt p) (class_expr ce))
+            | [] | _ :: _ -> error ploc "case class multi lab not yet impl"
+            end
diff --git a/patch-6.02.2-2 b/patch-6.02.2-2
new file mode 100644 (file)
index 0000000..8cc8e15
--- /dev/null
@@ -0,0 +1,216 @@
+Index: main/ast2pt.ml
+===================================================================
+retrieving revision 6.33
+diff -c -r6.33 ast2pt.ml
+*** main/ast2pt.ml     16 Mar 2011 16:52:42 -0000      6.33
+--- main/ast2pt.ml     17 Mar 2011 16:55:32 -0000
+***************
+*** 725,730 ****
+--- 725,737 ----
+      | t -> t ]
+  ;
+  
++ value label_of_patt =
++   fun
++   [ PaLid _ s -> uv s
++   | PaTyc _ (PaLid _ s) _ -> uv s
++   | p -> error (MLast.loc_of_patt p) "label_of_patt; case not impl" ]
++ ;
++ 
+  value rec expr =
+    fun
+    [ ExAcc loc x <:expr< val >> ->
+***************
+*** 856,867 ****
+        [ [(PaLab ploc lppo, w, e)] ->
+            List.fold_right
+              (fun (p, po) e -> do {
+!                let lab =
+!                  match p with
+!                  [ PaLid _ lab -> uv lab
+!                  | PaTyc _ (PaLid _ lab) _ -> uv lab
+!                  | _ -> error loc "not impl label for that patt 1" ]
+!                in
+                 let p =
+                   match uv po with
+                   [ Some p -> p
+--- 863,869 ----
+        [ [(PaLab ploc lppo, w, e)] ->
+            List.fold_right
+              (fun (p, po) e -> do {
+!                let lab = label_of_patt p in
+                 let p =
+                   match uv po with
+                   [ Some p -> p
+***************
+*** 878,889 ****
+                | None -> mkexp loc (newtype (uv s) (expr e)) ]
+            | None -> error loc "(type ..) not in this ocaml version" ]
+        | [(PaOlb loc p eo, w, e)] ->
+!           let lab =
+!             match p with
+!             [ PaLid _ lab -> uv lab
+!             | PaTyc _ (PaLid _ lab) _ -> uv lab
+!             | _ -> error loc "not impl label for that patt 2" ]
+!           in
+            let (p, eo) =
+              match uv eo with
+              [ Some (ExOlb _ p eo) -> (p, eo)
+--- 880,886 ----
+                | None -> mkexp loc (newtype (uv s) (expr e)) ]
+            | None -> error loc "(type ..) not in this ocaml version" ]
+        | [(PaOlb loc p eo, w, e)] ->
+!           let lab = label_of_patt p in
+            let (p, eo) =
+              match uv eo with
+              [ Some (ExOlb _ p eo) -> (p, eo)
+***************
+*** 1326,1336 ****
+        [ Some pcl_fun ->
+            match uv lppo with
+            [ [(p, po)] -> do {
+!               let lab =
+!                 match p with
+!                 [ PaLid _ s -> uv s
+!                 | p -> error loc "label not implemented in that case 2" ]
+!               in
+                let p =
+                  match uv po with
+                  [ Some p -> p
+--- 1323,1329 ----
+        [ Some pcl_fun ->
+            match uv lppo with
+            [ [(p, po)] -> do {
+!               let lab = label_of_patt p in
+                let p =
+                  match uv po with
+                  [ Some p -> p
+***************
+*** 1343,1353 ****
+    | CeFun loc (PaOlb _ p eo) ce ->
+        match ocaml_pcl_fun with
+        [ Some pcl_fun ->
+!           let lab =
+!             match p with
+!             [ PaLid _ s -> uv s
+!             | p -> error loc "label not implemented in that case 4" ]
+!           in
+            let (p, eo) =
+              match uv eo with
+              [ Some (ExOlb _ p eo) -> (p, eo)
+--- 1336,1342 ----
+    | CeFun loc (PaOlb _ p eo) ce ->
+        match ocaml_pcl_fun with
+        [ Some pcl_fun ->
+!           let lab = label_of_patt p in
+            let (p, eo) =
+              match uv eo with
+              [ Some (ExOlb _ p eo) -> (p, eo)
+Index: ocaml_src/main/ast2pt.ml
+===================================================================
+retrieving revision 6.33
+diff -c -r6.33 ast2pt.ml
+*** ocaml_src/main/ast2pt.ml   16 Mar 2011 16:52:42 -0000      6.33
+--- ocaml_src/main/ast2pt.ml   17 Mar 2011 16:56:42 -0000
+***************
+*** 881,886 ****
+--- 881,893 ----
+    loop
+  ;;
+  
++ let label_of_patt =
++   function
++     PaLid (_, s) -> uv s
++   | PaTyc (_, PaLid (_, s), _) -> uv s
++   | p -> error (MLast.loc_of_patt p) "label_of_patt; case not impl"
++ ;;
++ 
+  let rec expr =
+    function
+      ExAcc (loc, x, MLast.ExLid (_, "val")) ->
+***************
+*** 1015,1026 ****
+          [PaLab (ploc, lppo), w, e] ->
+            List.fold_right
+              (fun (p, po) e ->
+!                let lab =
+!                  match p with
+!                    PaLid (_, lab) -> uv lab
+!                  | PaTyc (_, PaLid (_, lab), _) -> uv lab
+!                  | _ -> error loc "not impl label for that patt 1"
+!                in
+                 let p =
+                   match uv po with
+                     Some p -> p
+--- 1022,1028 ----
+          [PaLab (ploc, lppo), w, e] ->
+            List.fold_right
+              (fun (p, po) e ->
+!                let lab = label_of_patt p in
+                 let p =
+                   match uv po with
+                     Some p -> p
+***************
+*** 1038,1049 ****
+            | None -> error loc "(type ..) not in this ocaml version"
+            end
+        | [PaOlb (loc, p, eo), w, e] ->
+!           let lab =
+!             match p with
+!               PaLid (_, lab) -> uv lab
+!             | PaTyc (_, PaLid (_, lab), _) -> uv lab
+!             | _ -> error loc "not impl label for that patt 2"
+!           in
+            let (p, eo) =
+              match uv eo with
+                Some (ExOlb (_, p, eo)) -> p, eo
+--- 1040,1046 ----
+            | None -> error loc "(type ..) not in this ocaml version"
+            end
+        | [PaOlb (loc, p, eo), w, e] ->
+!           let lab = label_of_patt p in
+            let (p, eo) =
+              match uv eo with
+                Some (ExOlb (_, p, eo)) -> p, eo
+***************
+*** 1522,1532 ****
+          Some pcl_fun ->
+            begin match uv lppo with
+              [p, po] ->
+!               let lab =
+!                 match p with
+!                   PaLid (_, s) -> uv s
+!                 | p -> error loc "label not implemented in that case 2"
+!               in
+                let p =
+                  match uv po with
+                    Some p -> p
+--- 1519,1525 ----
+          Some pcl_fun ->
+            begin match uv lppo with
+              [p, po] ->
+!               let lab = label_of_patt p in
+                let p =
+                  match uv po with
+                    Some p -> p
+***************
+*** 1540,1550 ****
+    | CeFun (loc, PaOlb (_, p, eo), ce) ->
+        begin match ocaml_pcl_fun with
+          Some pcl_fun ->
+!           let lab =
+!             match p with
+!               PaLid (_, s) -> uv s
+!             | p -> error loc "label not implemented in that case 4"
+!           in
+            let (p, eo) =
+              match uv eo with
+                Some (ExOlb (_, p, eo)) -> p, eo
+--- 1533,1539 ----
+    | CeFun (loc, PaOlb (_, p, eo), ce) ->
+        begin match ocaml_pcl_fun with
+          Some pcl_fun ->
+!           let lab = label_of_patt p in
+            let (p, eo) =
+              match uv eo with
+                Some (ExOlb (_, p, eo)) -> p, eo
diff --git a/patch-6.02.2-3 b/patch-6.02.2-3
new file mode 100644 (file)
index 0000000..620ec27
--- /dev/null
@@ -0,0 +1,41 @@
+Index: CHANGES
+===================================================================
+retrieving revision 6.38
+diff -c -r6.38 CHANGES
+*** CHANGES    16 Mar 2011 16:52:42 -0000      6.38
+--- CHANGES    24 Mar 2011 15:22:59 -0000
+***************
+*** 1,6 ****
+--- 1,7 ----
+  Camlp5 Version 6.02.3:
+  ----------------------
+  
++ * [24 Mar 11] Fixed bug: M.(a+b) was refused in normal syntax.
+  * [16 Mar 11] Fixed bug: incorrect compilation of label patterns of the
+    form ~a:b (or ~{a = b} in revised syntax) in class declarations.
+  * [16 Mar 11] Fixed bug: error while printing label patterns ~a:b with
+Index: etc/pa_o.ml
+===================================================================
+retrieving revision 6.34
+diff -c -r6.34 pa_o.ml
+*** etc/pa_o.ml        15 Mar 2011 13:49:08 -0000      6.34
+--- etc/pa_o.ml        24 Mar 2011 15:19:05 -0000
+***************
+*** 720,726 ****
+            in
+            loop <:expr< $_uid:i$ >> j
+        | i = V UIDENT; "."; "("; j = operator_rparen ->
+!           <:expr< $_uid:i$ . $lid:j$ >> ] ]
+    ;
+    (* Patterns *)
+    patt:
+--- 720,728 ----
+            in
+            loop <:expr< $_uid:i$ >> j
+        | i = V UIDENT; "."; "("; j = operator_rparen ->
+!           <:expr< $_uid:i$ . $lid:j$ >>
+!       | i = V UIDENT; "."; "("; e = expr; ")" ->
+!           <:expr< $_uid:i$ . ( $e$ ) >> ] ]
+    ;
+    (* Patterns *)
+    patt:
This page took 0.159121 seconds and 4 git commands to generate.