This repository was archived by the owner on Aug 16, 2021. It is now read-only.
Make error_chain with default-features = false work with Rust 1.10 #103
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
error_chain uses attributes on statements, stablized in Rust 1.13.
Factor them out of functions in the non-backtrace codepath, making it
possible to build a crate that uses error_chain with Rust 1.10.
The backtrace feature still requires Rust 1.13 for attributes on
statements, due to the impl_extract_backtrace macro, which needs to emit
a function with one block for each linked error type, some of which may
have attributes on them. And any code using compile-time conditionals
in attributes on variants within an error_chain! invocation (which
includes many of the tests and examples) will produce an error due to
rust-lang/rust#22250 (fixed in Rust 1.11).
But a crate using error_chain with default-features = false and avoiding
such compile-time conditionals will now compile.