diff options
author | Xavier Leroy <xavierleroy@users.noreply.github.com> | 2022-11-09 17:55:28 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-09 17:55:28 +0100 |
commit | abe1f24dfb2b1b67dfeeaf3513e6d3d534f7df32 (patch) | |
tree | 2befd6d99593d99f1d0fd0ef520dd8bce0ebf86e /cparser/Parse.mli | |
parent | e637a49e7a963683a4337b742c0adc0e1f93f139 (diff) | |
parent | 5a9f24b4e739b6ef830f526845dd4d1557d0adee (diff) | |
download | compcert-abe1f24dfb2b1b67dfeeaf3513e6d3d534f7df32.tar.gz compcert-abe1f24dfb2b1b67dfeeaf3513e6d3d534f7df32.zip |
Merge pull request #459 from AbsInt/full-switch
Handle Duff's device and other unstructured `switch` statements
Diffstat (limited to 'cparser/Parse.mli')
-rw-r--r-- | cparser/Parse.mli | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/cparser/Parse.mli b/cparser/Parse.mli index c406d96c..a37bd0e0 100644 --- a/cparser/Parse.mli +++ b/cparser/Parse.mli @@ -16,8 +16,16 @@ (* Entry point for the library: parse, elaborate, and transform *) -val preprocessed_file: string -> string -> string -> C.program - -(* first arg: desired transformations - second arg: source file name before preprocessing - third arg: file after preprocessing *) +val preprocessed_file: + ?unblock: bool -> + ?switch_norm: [`Off | `Partial | `Full] -> + ?struct_passing: bool -> + ?packed_structs: bool -> + string -> string -> C.program + (** [preprocessed_file filename sourcetext] performs parsing, + elaboration, and optional source-to-source transformations. + [filename] is the name of the source file, for error messages. + [sourcetext] is the text of the source file after preprocessing. + The optional arguments indicate which source-to-source + transformations to perform. They default to [false] or [`Off] + (do not perform). *) |