Your message dated Wed, 14 Oct 2015 04:39:02 +0000
with message-id <[email protected]>
and subject line Bug#801704: Removed package(s) from unstable
has caused the Debian Bug report #741605,
regarding spl: FTBFS with clang instead of gcc
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
741605: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=741605
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: spl
Version: 1.0
Severity: wishlist
Tags: patch

Dear Maintainer,

Using the rebuild infrastructure http://buildd-clang.debian.net/, your
package fails to build with clang (instead of gcc).

The full log can be viewed at
http://clang.debian.net/logs/2013-07-14/spl_1.0~pre6-4_unstable_clang.log

The attached patch fixes the clang error.

Thanks



-- System Information:
Debian Release: jessie/sid
  APT prefers testing-updates
  APT policy: (500, 'testing-updates'), (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.12-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=pl_PL.UTF-8, LC_CTYPE=pl_PL.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -ur spl-1.0~pre6/spl_modules/mod_array.c spl-1.0~pre6-clang/spl_modules/mod_array.c
--- spl-1.0~pre6/spl_modules/mod_array.c	2008-09-18 16:34:23.000000000 +0200
+++ spl-1.0~pre6-clang/spl_modules/mod_array.c	2014-03-13 20:59:30.169213605 +0100
@@ -119,6 +119,43 @@
 	return SPL_NEW_INT(1);
 }
 
+struct spl_task *task;
+struct spl_code *code;
+
+int compar(const void *a_vp, const void *b_vp)
+{
+	struct spl_node_sub **a_p = (struct spl_node_sub **)a_vp;
+	struct spl_node_sub **b_p = (struct spl_node_sub **)b_vp;
+	char *a = (*a_p)->key;
+	char *b = (*b_p)->key;
+	int switched = 0;
+	int ret = 0;
+
+	if (a_vp > b_vp) {
+		char *x = a;
+		a = b; b = x;
+		switched = 1;
+	}
+
+	spl_task_setcode(task, spl_code_get(code));
+	spl_create(task, task->ctx, "a", SPL_NEW_STRING_DUP(a), SPL_CREATE_LOCAL);
+	spl_create(task, task->ctx, "b", SPL_NEW_STRING_DUP(b), SPL_CREATE_LOCAL);
+	spl_clib_callback_run(task);
+
+	struct spl_node *rn = spl_lookup(task, task->ctx, "r", SPL_LOOKUP_TEST);
+	if (rn) {
+		// the SPL callback function returns '0' when the elements are
+		// in the right order and a different value when they are in the
+		// wrong order. But this function must return -1, 0 or +1 for
+		// less-then, equal or greater then. We need to convert this
+		// information...
+		ret = switched ? +1 : -1;
+		if (spl_get_int(rn)) ret *= -1;
+	}
+
+return ret;
+}
+
 static struct spl_node *handler_array_qsort(struct spl_task *t, void *d UNUSED)
 {
 #ifdef USEMACOSXAPI
@@ -140,12 +177,15 @@
 	}
 	assert(!s);
 
-	struct spl_code *code;
+	task = spl_clib_callback_task(t->vm);
+
+	spl_create(task, task->ctx, "c", spl_get(order_function), SPL_CREATE_LOCAL);
+
 	{
 		struct spl_asm *as = spl_asm_create();
 		spl_asm_add(as, SPL_OP_PUSHC, "r");
 		spl_asm_add(as, SPL_OP_ZERO,  0);
-		spl_asm_add(as, SPL_OP_PUSHA, "b");
+		spl_asm_add(as, SPL_OP_PUSHA,"b");							
 		spl_asm_add(as, SPL_OP_PUSHA, "a");
 		spl_asm_add(as, SPL_OP_DCALL, "c");
 		spl_asm_add(as, SPL_OP_POPL,  0);
@@ -154,45 +194,6 @@
 		spl_asm_destroy(as);
 	}
 
-	struct spl_task *task = spl_clib_callback_task(t->vm);
-
-	int compar(const void *a_vp, const void *b_vp)
-	{
-		struct spl_node_sub **a_p = (struct spl_node_sub **)a_vp;
-		struct spl_node_sub **b_p = (struct spl_node_sub **)b_vp;
-		char *a = (*a_p)->key;
-		char *b = (*b_p)->key;
-		int switched = 0;
-		int ret = 0;
-
-		if (a_vp > b_vp) {
-			char *x = a;
-			a = b; b = x;
-			switched = 1;
-		}
-
-		spl_task_setcode(task, spl_code_get(code));
-		spl_create(task, task->ctx, "a", SPL_NEW_STRING_DUP(a), SPL_CREATE_LOCAL);
-		spl_create(task, task->ctx, "b", SPL_NEW_STRING_DUP(b), SPL_CREATE_LOCAL);
-
-		spl_clib_callback_run(task);
-
-		struct spl_node *rn = spl_lookup(task, task->ctx, "r", SPL_LOOKUP_TEST);
-		if (rn) {
-			// the SPL callback function returns '0' when the elements are
-			// in the right order and a different value when they are in the
-			// wrong order. But this function must return -1, 0 or +1 for
-			// less-then, equal or greater then. We need to convert this
-			// information...
-			ret = switched ? +1 : -1;
-			if (spl_get_int(rn)) ret *= -1;
-		}
-
-		return ret;
-	}
-
-	spl_create(task, task->ctx, "c", spl_get(order_function), SPL_CREATE_LOCAL);
-
 	qsort(list, array->subs_counter, sizeof(struct spl_node_sub *), compar);
 
 	spl_task_destroy(task->vm, task);
diff -ur spl-1.0~pre6/spl_modules/mod_format_xml.c spl-1.0~pre6-clang/spl_modules/mod_format_xml.c
--- spl-1.0~pre6/spl_modules/mod_format_xml.c	2008-09-18 16:34:23.000000000 +0200
+++ spl-1.0~pre6-clang/spl_modules/mod_format_xml.c	2014-03-14 13:12:20.218483888 +0100
@@ -122,6 +122,32 @@
 	return target;
 }
 
+struct stack_el_t {
+	char *name;
+	int counter;
+	struct stack_el_t *next;
+};
+
+
+struct stack_t {
+	struct spl_node *node;
+	struct stack_el_t *el_list;
+	struct stack_t *next;
+};
+
+struct stack_t *stack = 0;
+int last_is_char = -1;
+struct spl_task *task;
+
+void stack_push()
+{
+	struct stack_t *s = malloc(sizeof(struct stack_t));
+	s->node = spl_get(0);
+	s->el_list = 0;
+	s->next = stack;
+	stack = s;
+}
+
 /**
  * This function returns a tree of ordered hashes. The keys in the ordered
  * hashes are encoded as following:
@@ -165,35 +191,8 @@
  *	debug xmltree.["E0:html"].["E0:head"].["E0:title"].["C0"];
  */
 // builtin format_xml_parse(xmldata)
-static struct spl_node *handler_format_xml_parse(struct spl_task *task, void *data UNUSED)
-{
-	struct stack_el_t {
-		char *name;
-		int counter;
-		struct stack_el_t *next;
-	};
-
-	struct stack_t {
-		struct spl_node *node;
-		struct stack_el_t *el_list;
-		struct stack_t *next;
-	};
-
-	char *xmlfile = spl_clib_get_string(task);
 
-	struct stack_t *stack = 0;
-	int last_is_char = -1;
-
-	void stack_push()
-	{
-		struct stack_t *s = malloc(sizeof(struct stack_t));
-		s->node = spl_get(0);
-		s->el_list = 0;
-		s->next = stack;
-		stack = s;
-	}
-
-	void stack_pop()
+void stack_pop()
 	{
 		struct stack_t *s = stack;
 		struct stack_el_t *e = s->el_list;
@@ -327,6 +326,11 @@
 		}
 	}
 
+static struct spl_node *handler_format_xml_parse(struct spl_task *task_tmp, void *data UNUSED)
+{
+	task = task_tmp;
+	char *xmlfile = spl_clib_get_string(task);	
+
 	stack_push();
 	spl_set_string(stack->node, strdup(""));
 
@@ -363,22 +367,17 @@
  * Create an XML text from a data structure such as returned by [[format_xml_parse()]].
  */
 // builtin format_xml_dump(xmltree)
-static struct spl_node *handler_format_xml_dump(struct spl_task *task, void *data UNUSED)
-{
-	struct txtlist_t {
-		char *text;
-		struct txtlist_t *next;
-	};
 
-	struct txtlist_t *list = 0, *current = 0;
-	int textlen = 0, i, j;
 
-	struct spl_node *tree = spl_clib_get_node(task);
-	if (!tree) return 0;
+struct txtlist_t {
+	char *text;
+	struct txtlist_t *next;
+};
 
-	spl_cleanup(task, tree);
+struct txtlist_t *list = 0, *current = 0;
+int textlen = 0;
 
-	void newtext()
+void newtext()
 	{
 		struct txtlist_t *t = calloc(1, sizeof(struct txtlist_t));
 		if ( !current ) list = t;
@@ -441,6 +440,15 @@
 			}
 	}
 
+static struct spl_node *handler_format_xml_dump(struct spl_task *task, void *data UNUSED)
+{ 
+	int i, j;
+
+	struct spl_node *tree = spl_clib_get_node(task);
+	if (!tree) return 0;
+
+	spl_cleanup(task, tree);
+
 	dump_xml(tree, 0);
 
 	char *text = malloc(textlen+1);

--- End Message ---
--- Begin Message ---
Version: 1.0~pre6-4+rm

Dear submitter,

as the package spl has just been removed from the Debian archive
unstable we hereby close the associated bug reports.  We are sorry
that we couldn't deal with your issue properly.

For details on the removal, please see https://bugs.debian.org/801704

The version of this package that was in Debian prior to this removal
can still be found using http://snapshot.debian.org/.

This message was generated automatically; if you believe that there is
a problem with it please contact the archive administrators by mailing
[email protected].

Debian distribution maintenance software
pp.
Scott Kitterman (the ftpmaster behind the curtain)

--- End Message ---

Reply via email to