unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
From: David Pirotte <david@altosw.be>
To: guile-devel <guile-devel@gnu.org>
Subject: Fw: guile-gnome, devel: corba test suite fails if using scm_make_vtable
Date: Thu, 4 Sep 2014 19:37:53 -0300	[thread overview]
Message-ID: <20140904193753.1899afbc@capac> (raw)


[-- Attachment #1.1: Type: text/plain, Size: 3733 bytes --]

Heya,

ping!

	I'm pretty sure it is a guile core and/or a test suite problem, not related
	to corba itself [which as a matter of fact I do not know and do not use
	either :)]

I'd like to solve this problem before to release a guile-gnome-platform 2.16.3
[which is a good idea anyway, but in the end it will also allow distro to get rid of
guile-1.8 ...]

Before to release I believe indeed that we _should_ get rid of all guile related
deprecated messages, which motivated my changes to
<git-clone>/corba/gnome/corba/guile-gnome-corba-types.c

I'm looking for a C knowledgeable guile developer or co-maintainer who knows what 
scm_make_vtable is supposed to do, args, ... to think about what could be the cause
of the problem [comparing the original function and its proposed substitution
in guile core maybe] and/or come and talk to me on irc [daviid] to debug together...

Thanks,
David

;; --

Begin forwarded message:

Date: Sat, 5 Jul 2014 19:58:14 -0300
From: David Pirotte <david@altosw.be>
To: guile-devel <guile-devel@gnu.org>
Subject: guile-gnome, devel: corba test suite fails if using scm_make_vtable


Hello,

If I apply the following changes [here below], corba compiles fine, but the test
suite fails badly [with a segmentation fault].

I have taken a bit of my time to identify the test that fails and segfault, here is a
recorded session, with the necessary material for other guilers to reproduce the bug:

	http://paste.lisp.org/display/143106#6

	I have attached an strace, obtained running the original [complete]
	wrapset.api

Help much appreciated here, thanks!

Happy hacking,
David


--- a/corba/gnome/corba/guile-gnome-corba-types.c
+++ b/corba/gnome/corba/guile-gnome-corba-types.c
@@ -1,6 +1,7 @@
 /* guile-gnome
  * Copyright (C) 2001, 2009, 2013 Martin Baulig <martin@gnome.org>
  * Copyright (C) 2003 Andy Wingo <wingo at pobox dot com>
+ * Copyright (C) 2014 David Pirotte <david at altosw dot be>
  *
  * guile-gnome-corba-types.c: Support routines for the GLib wrapper
  *
@@ -819,19 +820,17 @@ scm_init_gnome_corba_types (void)
 
 #include "guile-gnome-corba-types.x"
 
-    gsubr = scm_c_make_gsubr ("%print-corba-struct", 2, 0, 0, print_corba_struct);
+    gsubr = scm_c_define_gsubr ("%print-corba-struct", 2, 0, 0, print_corba_struct);
     scm_corba_struct_vtable = scm_permanent_object
-        (scm_make_vtable_vtable (scm_from_locale_string ("srprprprpopopW"),
-                                scm_from_int (0), SCM_LIST1 (gsubr)));
+        (scm_make_vtable (scm_from_latin1_string ("srprprprpopopW"), gsubr));
     SCM_SET_CORBA_STRUCT_TYPECODE (scm_corba_struct_vtable, TC_CORBA_TypeCode);
     scm_c_define ("%corba-struct-vtable", scm_corba_struct_vtable);
     scm_c_define ("%corba-struct-vtable-offset-user", scm_from_int
(scm_corba_struct_vtable_offset_user)); scm_c_define
("%corba-struct-vtable-offset-printer", scm_from_int
(scm_vtable_index_instance_printer)); 
-    gsubr = scm_c_make_gsubr ("%print-corba-sequence", 2, 0, 0,
print_corba_sequence);
+    gsubr = scm_c_define_gsubr ("%print-corba-sequence", 2, 0, 0,
print_corba_sequence); scm_corba_sequence_vtable = scm_permanent_object
-        (scm_make_vtable_vtable (scm_from_locale_string ("srprprprpopW"),
-                                scm_from_int (0), SCM_LIST1 (gsubr)));
+        (scm_make_vtable (scm_from_latin1_string ("srprprprpopW"), gsubr));
     SCM_SET_CORBA_SEQUENCE_TYPECODE (scm_corba_sequence_vtable, TC_CORBA_TypeCode);
     scm_c_define ("%corba-sequence-vtable", scm_corba_sequence_vtable);
     scm_c_define ("%corba-sequence-vtable-offset-user", scm_from_int
(scm_corba_sequence_vtable_offset_user));


[-- Attachment #1.2: strace.out.bz2 --]
[-- Type: application/x-bzip, Size: 9910 bytes --]

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 173 bytes --]

             reply	other threads:[~2014-09-04 22:37 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-04 22:37 David Pirotte [this message]
2014-09-05 12:30 ` Fw: guile-gnome, devel: corba test suite fails if using scm_make_vtable Neil Jerram
2014-09-06 18:20   ` David Pirotte

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140904193753.1899afbc@capac \
    --to=david@altosw.be \
    --cc=guile-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).