let print_global_declaration d =
let print_storage_class = function
Extern -> "extern" | ModuleStatic -> "static" | Inline -> "inline"
in
match d with
CTTdeclFunction( c, t, i, is, s ) ->
(print_storage_class c)^" "^(print_c_type t)^"\t"^i^"("^
(print_list (fun x -> x) ", " is)^")\n"
^(print_stmt 0 s)^"\n"
| CTTdeclVariable( c, t, s, i ) ->
(print_storage_class c)^" "^(print_c_type t)^"\t"^s
^(match i with
None -> ";\n"
| Some i -> " = "^(print_ctt_initializer i)^";\n")