summaryrefslogtreecommitdiff
path: root/src/process_file.ml
diff options
context:
space:
mode:
Diffstat (limited to 'src/process_file.ml')
-rw-r--r--src/process_file.ml7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/process_file.ml b/src/process_file.ml
index 3f24f4c3..88220841 100644
--- a/src/process_file.ml
+++ b/src/process_file.ml
@@ -162,6 +162,13 @@ let rec preprocess = function
| Parse_ast.DEF_pragma (p, arg, _) :: defs ->
(Util.warn ("Bad pragma $" ^ p ^ " " ^ arg); preprocess defs)
+ | (Parse_ast.DEF_default (Parse_ast.DT_aux (Parse_ast.DT_order (_, Parse_ast.ATyp_aux (atyp, _)), _)) as def) :: defs ->
+ begin match atyp with
+ | Parse_ast.ATyp_inc -> symbols := StringSet.add "_DEFAULT_INC" !symbols; def :: preprocess defs
+ | Parse_ast.ATyp_dec -> symbols := StringSet.add "_DEFAULT_DEC" !symbols; def :: preprocess defs
+ | _ -> def :: preprocess defs
+ end
+
| def :: defs -> def :: preprocess defs
let preprocess_ast (Parse_ast.Defs defs) = Parse_ast.Defs (preprocess defs)