diff options
Diffstat (limited to 'driver/Frontend.ml')
-rw-r--r-- | driver/Frontend.ml | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/driver/Frontend.ml b/driver/Frontend.ml index 5132f730..c8131662 100644 --- a/driver/Frontend.ml +++ b/driver/Frontend.ml @@ -80,11 +80,13 @@ let parse_c_file sourcename ifile = Sections.initialize(); CPragmas.reset(); (* Parsing and production of a simplified C AST *) - let ast = Parse.preprocessed_file - ~unblock: true - ~struct_passing: !option_fstruct_passing - ~packed_structs: !option_fpacked_structs - sourcename ifile in + let ast = + Parse.preprocessed_file + ~unblock: true + ~switch_norm: (if !option_funstructured_switch then `Full else `Partial) + ~struct_passing: !option_fstruct_passing + ~packed_structs: !option_fpacked_structs + sourcename ifile in (* Save C AST if requested *) Cprint.print_if ast; (* Conversion to Csyntax *) |