[Pkg-ocaml-maint-commits] [SCM] frama-c packaging branch, master, updated. debian/20100401+boron+dfsg-4-10-gf188023
Mehdi Dogguy
mehdi at debian.org
Sun Apr 24 16:21:37 UTC 2011
The following commit has been merged in the master branch:
commit 17eab41af7680548f95442a21e42055bd8e8bf90
Author: Mehdi Dogguy <mehdi at debian.org>
Date: Sat Apr 23 18:40:59 2011 +0200
Add fix for issue 727
diff --git a/debian/changelog b/debian/changelog
index 4f75129..3032aff 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,10 +4,11 @@ frama-c (20110201+carbon+dfsg-1) unstable; urgency=low
- Update copyright file.
- Remove all patches, integrated by upstream.
- Add patches:
- + 0001-Value-Analysis-Carbon-patchlevel-1.patch
+ + 0001-Value-Analysis-Carbon-patchlevel-1.patch
+ + 0002-Fix-for-issue-727.patch
* Fix Categories field in frama-c.desktop (Closes: #610432) (LP: #613853).
- -- Mehdi Dogguy <mehdi at debian.org> Fri, 15 Apr 2011 23:06:36 +0200
+ -- Mehdi Dogguy <mehdi at debian.org> Sat, 23 Apr 2011 18:40:20 +0200
frama-c (20100401+boron+dfsg-5) unstable; urgency=low
diff --git a/debian/patches/0002-Fix-for-issue-727.patch b/debian/patches/0002-Fix-for-issue-727.patch
new file mode 100644
index 0000000..5b5fcb9
--- /dev/null
+++ b/debian/patches/0002-Fix-for-issue-727.patch
@@ -0,0 +1,79 @@
+From: Mehdi Dogguy <mehdi at debian.org>
+Date: Sat, 23 Apr 2011 18:39:43 +0200
+Subject: [PATCH] Fix for issue 727
+
+---
+ src/kernel/visitor.ml | 26 ++++++++++++++++++--------
+ 1 files changed, 18 insertions(+), 8 deletions(-)
+
+diff --git a/src/kernel/visitor.ml b/src/kernel/visitor.ml
+index 5c6f69f..d09774e 100644
+--- a/src/kernel/visitor.ml
++++ b/src/kernel/visitor.ml
+@@ -178,30 +178,38 @@ object(self)
+ self#get_filling_actions
+ end
+ in
+- let post_action stmt = change_stmt stmt (make_children_annot self); stmt in
++ let post_action f stmt =
++ let annots = make_children_annot self in
++ let stmt = f stmt in
++ change_stmt stmt annots; stmt
++ in
+ let copy stmt =
+ change_stmt stmt
+ (make_children_annot self#frama_c_plain_copy); stmt
+ in
++ let plain_post = post_action (fun x -> x) in
+ match res with
+ | SkipChildren -> res
+ | JustCopy -> JustCopyPost copy
+ | JustCopyPost f -> JustCopyPost (f $ copy)
+- | DoChildren -> ChangeDoChildrenPost (stmt, post_action)
++ | DoChildren -> ChangeDoChildrenPost (stmt, plain_post)
+ | ChangeTo _ | ChangeToPost _ -> res
+ | ChangeDoChildrenPost (stmt,f) ->
+- ChangeDoChildrenPost (stmt, f $ post_action)
++ ChangeDoChildrenPost (stmt, post_action f)
+
+ method vstmt_aux _ = DoChildren
+ method vglob_aux _ = DoChildren
+
+ method vglob g =
+- let has_kf =
++ let fundec, has_kf =
+ match g with
+ GVarDecl(_,v,_) when isFunctionType v.vtype ->
+- self#set_current_kf (Globals.Functions.get v); true
+- | GFun(f,_) -> self#set_current_kf (Globals.Functions.get f.svar); true
+- | _ -> false
++ self#set_current_kf (Globals.Functions.get v);
++ None, true
++ | GFun(f,_) ->
++ self#set_current_kf (Globals.Functions.get f.svar);
++ Some f, true
++ | _ -> None, false
+ in
+ let res = self#vglob_aux g in
+ let make_funspec () =
+@@ -283,8 +291,10 @@ object(self)
+ in
+ let post_action g =
+ let spec = lazy (make_funspec ()) in
++ Extlib.may self#set_current_func fundec;
+ List.iter (fun g -> change_glob g (Lazy.force spec)) g;
+ if has_kf then self#reset_current_kf();
++ Extlib.may (fun _ -> self#reset_current_func ()) fundec;
+ g
+ in
+ match res with
+@@ -299,7 +309,7 @@ object(self)
+ if has_kf then self#reset_current_kf();
+ res
+ | ChangeToPost (l,f) -> ChangeToPost (l, f $ post_action)
+- | ChangeDoChildrenPost (g,f) -> ChangeDoChildrenPost (g, f $ post_action)
++ | ChangeDoChildrenPost (g,f) -> ChangeDoChildrenPost (g, post_action $ f)
+ end
+
+ class frama_c_copy prj = generic_frama_c_visitor prj (copy_visit ())
+--
diff --git a/debian/patches/series b/debian/patches/series
index 09bf248..4757ee4 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
0001-Value-Analysis-Carbon-patchlevel-1.patch
+0002-Fix-for-issue-727.patch
--
frama-c packaging
More information about the Pkg-ocaml-maint-commits
mailing list