summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--lisc/tools/abi.ml6
1 files changed, 5 insertions, 1 deletions
diff --git a/lisc/tools/abi.ml b/lisc/tools/abi.ml
index 2257aa2..301e160 100644
--- a/lisc/tools/abi.ml
+++ b/lisc/tools/abi.ml
@@ -396,7 +396,11 @@ module OutIL = struct
   let typedef oc name =
     let rec f: type a. a sty -> unit = function
       | Field (b, s) ->
-        fprintf oc "%s" (btype b);
+        fprintf oc "%s" begin
+          if AB b = AB Char  then "b" else
+          if AB b = AB Short then "h" else
+          btype b
+        end;
         if not (styempty s) then
           fprintf oc ", ";
         f s;