rework taking of parameter addresses
[libfirm] / ir / libcore / lc_appendable.c
index ca0637b..ed27d63 100644 (file)
@@ -22,7 +22,6 @@
 #include <stdio.h>
 #include <string.h>
 
-#include "lc_common_t.h"
 #include "lc_defines.h"
 #include "lc_printf.h"
 
@@ -32,18 +31,18 @@ int lc_appendable_snwadd(lc_appendable_t *app, const char *str, size_t len,
                unsigned int width, int left_just, char pad)
 {
        int res = 0;
-       int i;
-       int to_pad = width - len;
+       size_t i;
+       size_t to_pad = width > len ? width - len : 0;
 
        /* If not left justified, pad left */
-       for(i = 0; !left_just && i < to_pad; ++i)
+       for (i = 0; !left_just && i < to_pad; ++i)
                res += lc_appendable_chadd(app, pad);
 
        /* Send the visible portion of the string to the output. */
        res += lc_appendable_snadd(app, str, len);
 
        /* If left justified, pad right. */
-       for(i = 0; left_just && i < to_pad; ++i)
+       for (i = 0; left_just && i < to_pad; ++i)
                res += lc_appendable_chadd(app, pad);
 
        return res;
@@ -61,12 +60,14 @@ void lc_appendable_init(lc_appendable_t *env, const lc_appendable_funcs_t *app,
        app->init(env);
 }
 
-static void default_init(UNUSED(lc_appendable_t *env))
+static void default_init(lc_appendable_t *env)
 {
+       (void) env;
 }
 
-static void default_finish(UNUSED(lc_appendable_t *env))
+static void default_finish(lc_appendable_t *env)
 {
+       (void) env;
 }
 
 /*
@@ -76,13 +77,13 @@ static void default_finish(UNUSED(lc_appendable_t *env))
 static int file_snadd(lc_appendable_t *obj, const char *str, size_t n)
 {
        obj->written += n;
-       fwrite(str, sizeof(char), n, obj->obj);
+       fwrite(str, sizeof(char), n, (FILE*)obj->obj);
        return n;
 }
 
 static int file_chadd(lc_appendable_t *obj, int ch)
 {
-       fputc(ch, obj->obj);
+       fputc(ch, (FILE*)obj->obj);
        obj->written++;
        return 1;
 }
@@ -103,13 +104,13 @@ const lc_appendable_funcs_t *lc_appendable_file = &app_file;
 
 static void str_init(lc_appendable_t *obj)
 {
-       strncpy(obj->obj, "", obj->limit);
+       strncpy((char*)obj->obj, "", obj->limit);
 }
 
 static int str_snadd(lc_appendable_t *obj, const char *str, size_t n)
 {
        size_t to_write = LC_MIN(obj->limit - obj->written - 1, n);
-       char *tgt = obj->obj;
+       char *tgt = (char*)obj->obj;
        strncpy(tgt + obj->written, str, to_write);
        obj->written += to_write;
        return to_write;
@@ -117,8 +118,8 @@ static int str_snadd(lc_appendable_t *obj, const char *str, size_t n)
 
 static int str_chadd(lc_appendable_t *obj, int ch)
 {
-       if(obj->limit - obj->written > 1) {
-               char *tgt = obj->obj;
+       if (obj->limit - obj->written > 1) {
+               char *tgt = (char*)obj->obj;
                tgt[obj->written++] = (char) ch;
                return 1;
        }
@@ -128,7 +129,7 @@ static int str_chadd(lc_appendable_t *obj, int ch)
 
 static void str_finish(lc_appendable_t *obj)
 {
-       char *str = obj->obj;
+       char *str = (char*)obj->obj;
        str[obj->written] = '\0';
 }
 
@@ -147,7 +148,7 @@ const lc_appendable_funcs_t *lc_appendable_string = &app_string;
 
 static int obst_snadd(lc_appendable_t *obj, const char *str, size_t n)
 {
-       struct obstack *obst = obj->obj;
+       struct obstack *obst = (struct obstack*)obj->obj;
        obj->written += n;
        obstack_grow(obst, str, n);
        return n;
@@ -155,7 +156,7 @@ static int obst_snadd(lc_appendable_t *obj, const char *str, size_t n)
 
 static int obst_chadd(lc_appendable_t *obj, int ch)
 {
-       struct obstack *obst = obj->obj;
+       struct obstack *obst = (struct obstack*)obj->obj;
        obstack_1grow(obst, (char) ch);
        obj->written++;
        return 1;