altos/scheme: More compiler warning cleanups
[fw/altos] / src / scheme / ao_scheme_builtin.c
index c0f636fa78b58a5592ff97d655d509976a47e8ac..b67889930a33fbc47833435fd032c962a04c4edb 100644 (file)
@@ -52,7 +52,7 @@ char *ao_scheme_args_name(uint8_t args) {
        case AO_SCHEME_FUNC_LAMBDA: return ao_scheme_poly_atom(_ao_scheme_atom_lambda)->name;
        case AO_SCHEME_FUNC_NLAMBDA: return ao_scheme_poly_atom(_ao_scheme_atom_nlambda)->name;
        case AO_SCHEME_FUNC_MACRO: return ao_scheme_poly_atom(_ao_scheme_atom_macro)->name;
-       default: return "???";
+       default: return (char *) "???";
        }
 }
 #else
@@ -64,7 +64,7 @@ static char *
 ao_scheme_builtin_name(enum ao_scheme_builtin_id b) {
        if (b < _builtin_last)
                return ao_scheme_poly_atom(builtin_names[b])->name;
-       return "???";
+       return (char *) "???";
 }
 
 static const ao_poly ao_scheme_args_atoms[] = {
@@ -79,7 +79,7 @@ ao_scheme_args_name(uint8_t args)
        args &= AO_SCHEME_FUNC_MASK;
        if (args < sizeof ao_scheme_args_atoms / sizeof ao_scheme_args_atoms[0])
                return ao_scheme_poly_atom(ao_scheme_args_atoms[args])->name;
-       return "(unknown)";
+       return (char *) "(unknown)";
 }
 #endif
 
@@ -127,7 +127,7 @@ ao_scheme_check_argt(ao_poly name, struct ao_scheme_cons *cons, int argc, int ty
        return _ao_scheme_bool_true;
 }
 
-int32_t
+static int32_t
 ao_scheme_arg_int(ao_poly name, struct ao_scheme_cons *cons, int argc)
 {
        ao_poly p = ao_scheme_arg(cons, argc);
@@ -306,10 +306,10 @@ ao_scheme_do_display(struct ao_scheme_cons *cons)
        return _ao_scheme_bool_true;
 }
 
-ao_poly
+static ao_poly
 ao_scheme_math(struct ao_scheme_cons *orig_cons, enum ao_scheme_builtin_id op)
 {
-       struct ao_scheme_cons *cons = cons;
+       struct ao_scheme_cons *cons;
        ao_poly ret = AO_SCHEME_NIL;
 
        for (cons = orig_cons; cons; cons = ao_scheme_cons_cdr(cons)) {
@@ -501,7 +501,7 @@ ao_scheme_do_remainder(struct ao_scheme_cons *cons)
        return ao_scheme_math(cons, builtin_remainder);
 }
 
-ao_poly
+static ao_poly
 ao_scheme_compare(struct ao_scheme_cons *cons, enum ao_scheme_builtin_id op)
 {
        ao_poly left;
@@ -545,6 +545,7 @@ ao_scheme_compare(struct ao_scheme_cons *cons, enum ao_scheme_builtin_id op)
                                default:
                                        break;
                                }
+#ifdef AO_SCHEME_FEATURE_FLOAT
                        } else if (ao_scheme_number_typep(lt) && ao_scheme_number_typep(rt)) {
                                float l, r;
 
@@ -574,6 +575,7 @@ ao_scheme_compare(struct ao_scheme_cons *cons, enum ao_scheme_builtin_id op)
                                default:
                                        break;
                                }
+#endif /* AO_SCHEME_FEATURE_FLOAT */
                        } else if (lt == AO_SCHEME_STRING && rt == AO_SCHEME_STRING) {
                                int c = strcmp(ao_scheme_poly_string(left),
                                               ao_scheme_poly_string(right));