libctf: fix testsuite bugs revealed by -Wall

Most of these are harmless, but some of the type confusions and especially
a missing ctf_strerror() on an error path were actual bugs that could
have resulted in test failures crashing rather than printing an error
message.

libctf/
	* testsuite/libctf-lookup/enumerator-iteration.c: Fix type
        confusion, signedness confusion and a missing ctf_errmsg().
	* testsuite/libctf-regression/libctf-repeat-cu-main.c: Return 0 from
        the test function.
	* testsuite/libctf-regression/open-error-free.c: Fix signedness
        confusion.
	* testsuite/libctf-regression/zrewrite.c: Remove unused label.
diff --git a/libctf/testsuite/libctf-lookup/enumerator-iteration.c b/libctf/testsuite/libctf-lookup/enumerator-iteration.c
index e46dad6..78cb5a3 100644
--- a/libctf/testsuite/libctf-lookup/enumerator-iteration.c
+++ b/libctf/testsuite/libctf-lookup/enumerator-iteration.c
@@ -23,8 +23,8 @@
     {
       char *foo;
 
-      printf ("%s in %s has value %i\n", name,
-	      foo = ctf_type_aname (fp, type), val);
+      printf ("%s in %s has value %li\n", name,
+	      foo = ctf_type_aname (fp, type), (long int) val);
       free (foo);
 
       ctf_dict_close (fp);
@@ -44,7 +44,6 @@
   int err;
   ctf_id_t type;
   ctf_next_t *i = NULL;
-  const char *name;
   int64_t val;
   int counter = 0;
 
@@ -71,8 +70,8 @@
     {
       char *foo;
 
-      printf ("IENUMSAMPLE2_2 in %s has value %i\n",
-	      foo = ctf_type_aname (fp, type), val);
+      printf ("IENUMSAMPLE2_2 in %s has value %li\n",
+	      foo = ctf_type_aname (fp, type), (long int) val);
       free (foo);
 
       if ((type = ctf_add_enum (fp, CTF_ADD_ROOT, "ie3")) == CTF_ERR)
@@ -117,13 +116,13 @@
 	  if (type != CTF_ERR)
 	    {
 	      char *foo;
-	      printf ("direct lookup: hidden lookup did not return ECTF_NOENUMNAM but rather %i in %s\n",
-		      val, foo = ctf_type_aname (fp, type));
+	      printf ("direct lookup: hidden lookup did not return ECTF_NOENUMNAM but rather %li in %s\n",
+		      (long int) val, foo = ctf_type_aname (fp, type));
 	      free (foo);
 	    }
 	  else
 	    printf ("direct lookup: hidden lookup did not return ECTF_NOENUMNAM but rather %s\n",
-		    ctf_errno (fp));
+		    ctf_errmsg (ctf_errno (fp)));
 	}
 
       ctf_dict_close (fp);
diff --git a/libctf/testsuite/libctf-regression/libctf-repeat-cu-main.c b/libctf/testsuite/libctf-regression/libctf-repeat-cu-main.c
index bfbaf0c..c1f2f63 100644
--- a/libctf/testsuite/libctf-regression/libctf-repeat-cu-main.c
+++ b/libctf/testsuite/libctf-regression/libctf-repeat-cu-main.c
@@ -2,4 +2,4 @@
 int a (void);
 int b (void);
 int c (void);
-int blah (void) { a(); b(); c(); }
+int blah (void) { a(); b(); c(); return 0; }
diff --git a/libctf/testsuite/libctf-regression/open-error-free.c b/libctf/testsuite/libctf-regression/open-error-free.c
index edc5f34..7405cdb 100644
--- a/libctf/testsuite/libctf-regression/open-error-free.c
+++ b/libctf/testsuite/libctf-regression/open-error-free.c
@@ -143,7 +143,7 @@
      failure after we corrupt it: the leak is only observable if the dict gets
      malloced, which only happens after that point.)  */
 
-  if ((written = ctf_write_mem (fp, &written_size, (size_t) -1)) == NULL)
+  if ((written = (char *) ctf_write_mem (fp, &written_size, (size_t) -1)) == NULL)
     goto write_err;
 
   ctf_dict_close (fp);
diff --git a/libctf/testsuite/libctf-regression/zrewrite.c b/libctf/testsuite/libctf-regression/zrewrite.c
index 5e061f1..3ddc354 100644
--- a/libctf/testsuite/libctf-regression/zrewrite.c
+++ b/libctf/testsuite/libctf-regression/zrewrite.c
@@ -150,7 +150,4 @@
  write_stderr:
   fprintf (stderr, "%s: cannot open for writing: %s\n", argv[0], strerror (errno));
   return 1;
- read_err: 
-  fprintf (stderr, "%s: cannot read\n", argv[0]);
-  return 1;
 }