summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmilio Cobos Álvarez <emilio@crisal.io>2020-06-29 04:07:30 +0200
committerEmilio Cobos Álvarez <emilio@crisal.io>2020-07-01 16:21:13 +0200
commit243359c36c78553f9348993e9f1b8dd20686439a (patch)
tree1da6707da230420f9085c4ebb9d8c047649446ed
parent51ff49ae6366163b78d197db6b8f454c03d5733f (diff)
lib: Trivially fix various command line arguments that are not properly round-tripping.
-rw-r--r--src/lib.rs17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 9aef0073..5a86364e 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -232,8 +232,17 @@ impl Builder {
output_vector.push("--rust-target".into());
output_vector.push(self.options.rust_target.into());
+ // FIXME(emilio): This is a bit hacky, maybe we should stop re-using the
+ // RustFeatures to store the "disable_untagged_union" call, and make it
+ // a different flag that we check elsewhere / in generate().
+ if !self.options.rust_features.untagged_union &&
+ RustFeatures::from(self.options.rust_target).untagged_union
+ {
+ output_vector.push("--disable-untagged-union".into());
+ }
+
if self.options.default_enum_style != Default::default() {
- output_vector.push("--default-enum-style=".into());
+ output_vector.push("--default-enum-style".into());
output_vector.push(
match self.options.default_enum_style {
codegen::EnumVariation::Rust {
@@ -256,7 +265,7 @@ impl Builder {
}
if self.options.default_alias_style != Default::default() {
- output_vector.push("--default-alias-style=".into());
+ output_vector.push("--default-alias-style".into());
output_vector
.push(self.options.default_alias_style.as_str().into());
}
@@ -468,6 +477,10 @@ impl Builder {
output_vector.push("--conservative-inline-namespaces".into());
}
+ if self.options.generate_inline_functions {
+ output_vector.push("--generate-inline-functions".into());
+ }
+
if !self.options.record_matches {
output_vector.push("--no-record-matches".into());
}