This is an automated email from the git hooks/post-receive script. glondu pushed a commit to branch master in repository ocaml-ctypes.
commit 0f828ff2a7a32504796926027445ed48d130f88d Author: Stephane Glondu <st...@glondu.net> Date: Wed Jun 22 13:44:06 2016 +0200 Fix test-roots --- debian/patches/0006-Fix-test-roots.patch | 86 ++++++++++++++++++++++ ...06-Temporarily-disable-root-lifetime-test.patch | 23 ------ debian/patches/series | 2 +- 3 files changed, 87 insertions(+), 24 deletions(-) diff --git a/debian/patches/0006-Fix-test-roots.patch b/debian/patches/0006-Fix-test-roots.patch new file mode 100644 index 0000000..bfd3a6a --- /dev/null +++ b/debian/patches/0006-Fix-test-roots.patch @@ -0,0 +1,86 @@ +From: Stephane Glondu <st...@glondu.net> +Date: Wed, 22 Jun 2016 13:43:47 +0200 +Subject: Fix test-roots + +Better delimit v's lifetime with a local block. This is relevant in +bytecode. +--- + tests/test-roots/test_roots.ml | 40 +++++++++++++++++++++++++--------------- + 1 file changed, 25 insertions(+), 15 deletions(-) + +diff --git a/tests/test-roots/test_roots.ml b/tests/test-roots/test_roots.ml +index f9d2a4e..0b399ed 100644 +--- a/tests/test-roots/test_roots.ml ++++ b/tests/test-roots/test_roots.ml +@@ -19,26 +19,32 @@ let testlib = Dl.(dlopen ~filename:"clib/libtest_functions.so" ~flags:[RTLD_NOW] + let test_root_lifetime _ = + (* Check that values not registered as roots are collected. *) + let alive = ref true in +- let v = [| 1; 2; 3 |] in +- Gc.finalise (fun _ -> alive := false) v; ++ let () = ++ let v = [| 1; 2; 3 |] in ++ Gc.finalise (fun _ -> alive := false) v; ++ in + Gc.compact (); + assert_equal false !alive + ~msg:"values not registered as roots are collected"; + + (* Check that values registered as roots are not collected. *) + let alive = ref true in +- let v = [| 1; 2; 3 |] in +- Gc.finalise (fun _ -> alive := false) v; +- let _r = Root.create v in ++ let _r = ++ let v = [| 1; 2; 3 |] in ++ Gc.finalise (fun _ -> alive := false) v; ++ Root.create v ++ in + Gc.compact (); + assert_equal true !alive + ~msg:"registered roots are not collected"; + + (* Check that values unregistered as roots are collected. *) + let alive = ref true in +- let v = [| 1; 2; 3 |] in +- Gc.finalise (fun _ -> alive := false) v; +- let r = Root.create v in ++ let r = ++ let v = [| 1; 2; 3 |] in ++ Gc.finalise (fun _ -> alive := false) v; ++ Root.create v ++ in + Root.release r; + Gc.compact (); + assert_equal false !alive +@@ -46,19 +52,23 @@ let test_root_lifetime _ = + + (* Check that values assigned to roots are not collected. *) + let alive = ref true in +- let v = [| 1; 2; 3 |] in +- Gc.finalise (fun _ -> alive := false) v; +- let r = Root.create () in +- Root.set r v; ++ let () = ++ let v = [| 1; 2; 3 |] in ++ Gc.finalise (fun _ -> alive := false) v; ++ let r = Root.create () in ++ Root.set r v; ++ in + Gc.compact (); + assert_equal true !alive + ~msg:"values assigned to roots are not collected"; + + (* Check that values registered as roots and then overwritten are collected. *) + let alive = ref true in +- let v = [| 1; 2; 3 |] in +- Gc.finalise (fun _ -> alive := false) v; +- let r = Root.create v in ++ let r = ++ let v = [| 1; 2; 3 |] in ++ Gc.finalise (fun _ -> alive := false) v; ++ Root.create v ++ in + Root.set r (); + Gc.compact (); + assert_equal false !alive diff --git a/debian/patches/0006-Temporarily-disable-root-lifetime-test.patch b/debian/patches/0006-Temporarily-disable-root-lifetime-test.patch deleted file mode 100644 index f6b0953..0000000 --- a/debian/patches/0006-Temporarily-disable-root-lifetime-test.patch +++ /dev/null @@ -1,23 +0,0 @@ -From: Stephane Glondu <st...@glondu.net> -Date: Wed, 22 Jun 2016 11:58:42 +0200 -Subject: Temporarily disable root lifetime test - ---- - tests/test-roots/test_roots.ml | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/tests/test-roots/test_roots.ml b/tests/test-roots/test_roots.ml -index f9d2a4e..b9e5837 100644 ---- a/tests/test-roots/test_roots.ml -+++ b/tests/test-roots/test_roots.ml -@@ -90,8 +90,8 @@ let test_passing_roots _ = - - - let suite = "Root tests" >::: -- ["root lifetime" -- >:: test_root_lifetime; -+ [(*"root lifetime" -+ >:: test_root_lifetime;*) - - "passing roots" - >:: test_passing_roots; diff --git a/debian/patches/series b/debian/patches/series index b9d41d5..cce951b 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -3,4 +3,4 @@ 0003-Initialize-the-return-slot-for-small-return-values-f.patch 0004-Missing-return-in-ffi_return_type_adjustment.patch 0005-Add-support-for-bytecode-architectures.patch -0006-Temporarily-disable-root-lifetime-test.patch +0006-Fix-test-roots.patch -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ocaml-maint/packages/ocaml-ctypes.git _______________________________________________ Pkg-ocaml-maint-commits mailing list Pkg-ocaml-maint-commits@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-ocaml-maint-commits