Skip to content

cargo features for quickchecking crate #1169

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
shnewto opened this issue Nov 30, 2017 · 0 comments
Closed

cargo features for quickchecking crate #1169

shnewto opened this issue Nov 30, 2017 · 0 comments

Comments

@shnewto
Copy link
Contributor

shnewto commented Nov 30, 2017

The quickchecking crate, for property testing with fuzzed C headers, has some special casing so that known issues (#550, #684, and #1153) don't cause the property tests to fail. That special casing could be handled with a feature in the crate's Cargo.toml file and some cfg attributes in the source.

Corresponds to extending #970

quickchecking crate lives in the tests directory here: https://github.com/rust-lang-nursery/rust-bindgen/tree/master/tests/quickchecking

bors-servo pushed a commit that referenced this issue Dec 9, 2017
Enable Cargo features for quickchecking crate

Logic to enable/disable special casing (due to known issues #550, #684, and #1153) has been exposed as features in the `quickchecking` crate's Cargo.toml file and corresponding `cfg` attributes in the source.

In addition to adding Cargo features, this PR represents the following:
- Documentation in `bindgen`'s CONTRIBUTING.md that points to a new README.md located in the `quickchecking` crate's directory.
- The Debug trait was implemented for the `HeaderC` type. This enables failing property tests to be reported as C source code rather than a Rust data structure.
- The ArrayDimensionC type is now used in header generation for union, struct, and basic declarations.

Thanks for taking a look and for any feedback!

Closes #1169

r? @fitzgen
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant