Lines 2060-2067
let global vardefs g =
Link Here
|
2060 |
| GCompTag(compinfo,pos) when compinfo.cstruct -> (* struct type *) |
2060 |
| GCompTag(compinfo,pos) when compinfo.cstruct -> (* struct type *) |
2061 |
let field fi = |
2061 |
let field fi = |
2062 |
let this = |
2062 |
let this = |
2063 |
default_field_modifiers, |
2063 |
false, |
2064 |
ctype ?bitsize:fi.fsize_in_bits fi.ftype, |
2064 |
(ctype ?bitsize:fi.fsize_in_bits fi.ftype:Jc_ast.ptype), |
2065 |
fi.fname, fi.fsize_in_bits |
2065 |
fi.fname, fi.fsize_in_bits |
2066 |
in |
2066 |
in |
2067 |
let padding_size = |
2067 |
let padding_size = |
Lines 2069-2076
let global vardefs g =
Link Here
|
2069 |
in |
2069 |
in |
2070 |
if padding_size = 0 then [this] else |
2070 |
if padding_size = 0 then [this] else |
2071 |
let padding = |
2071 |
let padding = |
2072 |
default_field_modifiers, |
2072 |
false, |
2073 |
type_of_padding, unique_name "padding", fi.fpadding_in_bits |
2073 |
(type_of_padding:Jc_ast.ptype), unique_name "padding", fi.fpadding_in_bits |
2074 |
in |
2074 |
in |
2075 |
[this;padding] |
2075 |
[this;padding] |
2076 |
in |
2076 |
in |
Lines 2131-2138
let global vardefs g =
Link Here
|
2131 |
in |
2131 |
in |
2132 |
let padding = |
2132 |
let padding = |
2133 |
if union_size = 0 then [] else |
2133 |
if union_size = 0 then [] else |
2134 |
[default_field_modifiers, |
2134 |
[false, |
2135 |
type_of_padding, unique_name "padding", Some union_size] |
2135 |
(type_of_padding:Jc_ast.ptype), unique_name "padding", Some union_size] |
2136 |
in |
2136 |
in |
2137 |
let union_tag = JCDtag(compinfo.cname,[],None,padding,[]) in |
2137 |
let union_tag = JCDtag(compinfo.cname,[],None,padding,[]) in |
2138 |
let fields = List.map field compinfo.cfields in |
2138 |
let fields = List.map field compinfo.cfields in |
Lines 2397-2404
let pragma = function
Link Here
|
2397 |
[Jc_output.JCfloat_model Jc_env.FMstrict] |
2397 |
[Jc_output.JCfloat_model Jc_env.FMstrict] |
2398 |
| "full" -> float_model := `Full; |
2398 |
| "full" -> float_model := `Full; |
2399 |
[Jc_output.JCfloat_model Jc_env.FMfull] |
2399 |
[Jc_output.JCfloat_model Jc_env.FMfull] |
2400 |
| "multirounding" -> float_model := `Multirounding; |
|
|
2401 |
[Jc_output.JCfloat_model Jc_env.FMmultirounding] |
2402 |
| s -> |
2400 |
| s -> |
2403 |
Jessie_options.warning ~current:true |
2401 |
Jessie_options.warning ~current:true |
2404 |
"pragma %s: identifier %s is not a valid value (ignored)." |
2402 |
"pragma %s: identifier %s is not a valid value (ignored)." |
2405 |
- |
|
|