G'day,
The attached patch ensures that the BASE-TYPE argument specified in CONSTANTENUM grovel forms has an affect on the format string passed to fprintf.
It appears CENUM should be fixed too. The patch does NOT fix that.
Thanks Mark
diff --git a/grovel/grovel.lisp b/grovel/grovel.lisp index a0c150c..1f97da6 100644 --- a/grovel/grovel.lisp +++ b/grovel/grovel.lisp @@ -634,7 +634,9 @@ int main(int argc, char**argv) { (check-type c-name string) (format out "~&#ifdef ~A~%" c-name) (c-format out " ") - (c-printf out "%i" c-name) + (format out "~& fprintf(output, ~A, ~A);~%" + (foreign-type-to-printf-specification (or base-type :int)) + c-name) (format out "~&#else~%")) (unless optional (c-format out