Skip to content
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

From<NonZero*> impls for wider NonZero types #66277

Merged
merged 5 commits into from
Dec 10, 2019

Conversation

peter-wilkins
Copy link
Contributor

@peter-wilkins peter-wilkins commented Nov 10, 2019

Closes: #66291

@rust-highfive
Copy link
Collaborator

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @kennytm (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Nov 10, 2019
impl From<$Small> for $Large {
/// Widens a non-zero integer without checking the value is zero.
///
/// # Safety
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Safety section here is irrelevant, because the input type already guarantees the value is non-zero.

@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-6.0 of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-11-10T17:30:40.9214791Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-11-10T17:30:40.9450836Z ##[command]git config gc.auto 0
2019-11-10T17:30:40.9540962Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-11-10T17:30:40.9593698Z ##[command]git config --get-all http.proxy
2019-11-10T17:30:40.9737054Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/66277/merge:refs/remotes/pull/66277/merge
---
2019-11-10T17:36:55.9018581Z    Compiling serde_json v1.0.40
2019-11-10T17:36:57.7182159Z    Compiling tidy v0.1.0 (/checkout/src/tools/tidy)
2019-11-10T17:37:09.3526053Z     Finished release [optimized] target(s) in 1m 30s
2019-11-10T17:37:09.3604907Z tidy check
2019-11-10T17:37:10.5315481Z tidy error: /checkout/src/libcore/num/mod.rs:5267: undocumented unsafe
2019-11-10T17:37:10.5315594Z tidy error: /checkout/src/libcore/num/mod.rs:5286: line longer than 100 chars
2019-11-10T17:37:10.5315644Z tidy error: /checkout/src/libcore/num/mod.rs:5287: line longer than 100 chars
2019-11-10T17:37:10.5315867Z tidy error: /checkout/src/libcore/num/mod.rs:5288: line longer than 100 chars
2019-11-10T17:37:10.5315912Z tidy error: /checkout/src/libcore/num/mod.rs:5289: line longer than 100 chars
2019-11-10T17:37:10.5315955Z tidy error: /checkout/src/libcore/num/mod.rs:5290: line longer than 100 chars
2019-11-10T17:37:10.5316013Z tidy error: /checkout/src/libcore/num/mod.rs:5291: line longer than 100 chars
2019-11-10T17:37:10.5316057Z tidy error: /checkout/src/libcore/num/mod.rs:5292: line longer than 100 chars
2019-11-10T17:37:10.5316101Z tidy error: /checkout/src/libcore/num/mod.rs:5293: line longer than 100 chars
2019-11-10T17:37:10.5316160Z tidy error: /checkout/src/libcore/num/mod.rs:5294: line longer than 100 chars
2019-11-10T17:37:10.5316477Z tidy error: /checkout/src/libcore/num/mod.rs:5295: line longer than 100 chars
2019-11-10T17:37:10.5316525Z tidy error: /checkout/src/libcore/num/mod.rs:5296: line longer than 100 chars
2019-11-10T17:37:10.5316587Z tidy error: /checkout/src/libcore/num/mod.rs:5299: line longer than 100 chars
2019-11-10T17:37:10.5316629Z tidy error: /checkout/src/libcore/num/mod.rs:5300: line longer than 100 chars
2019-11-10T17:37:10.5316671Z tidy error: /checkout/src/libcore/num/mod.rs:5301: line longer than 100 chars
2019-11-10T17:37:10.5316730Z tidy error: /checkout/src/libcore/num/mod.rs:5302: line longer than 100 chars
2019-11-10T17:37:10.5316773Z tidy error: /checkout/src/libcore/num/mod.rs:5303: line longer than 100 chars
2019-11-10T17:37:10.5316815Z tidy error: /checkout/src/libcore/num/mod.rs:5304: line longer than 100 chars
2019-11-10T17:37:10.5316874Z tidy error: /checkout/src/libcore/num/mod.rs:5305: line longer than 100 chars
2019-11-10T17:37:10.5316931Z tidy error: /checkout/src/libcore/num/mod.rs:5306: line longer than 100 chars
2019-11-10T17:37:10.5316974Z tidy error: /checkout/src/libcore/num/mod.rs:5307: line longer than 100 chars
2019-11-10T17:37:10.5317032Z tidy error: /checkout/src/libcore/num/mod.rs:5308: line longer than 100 chars
2019-11-10T17:37:10.5317074Z tidy error: /checkout/src/libcore/num/mod.rs:5309: line longer than 100 chars
2019-11-10T17:37:10.5317132Z tidy error: /checkout/src/libcore/num/mod.rs:5312: line longer than 100 chars
2019-11-10T17:37:10.5317175Z tidy error: /checkout/src/libcore/num/mod.rs:5313: line longer than 100 chars
2019-11-10T17:37:10.5317218Z tidy error: /checkout/src/libcore/num/mod.rs:5314: line longer than 100 chars
2019-11-10T17:37:10.5317275Z tidy error: /checkout/src/libcore/num/mod.rs:5315: line longer than 100 chars
2019-11-10T17:37:10.5317317Z tidy error: /checkout/src/libcore/num/mod.rs:5316: line longer than 100 chars
2019-11-10T17:37:10.5317360Z tidy error: /checkout/src/libcore/num/mod.rs:5317: line longer than 100 chars
2019-11-10T17:37:10.5317430Z tidy error: /checkout/src/libcore/num/mod.rs:5318: line longer than 100 chars
2019-11-10T17:37:10.5317648Z tidy error: /checkout/src/libcore/num/mod.rs:5319: line longer than 100 chars
2019-11-10T17:37:10.5317692Z tidy error: /checkout/src/libcore/num/mod.rs:5320: line longer than 100 chars
2019-11-10T17:37:10.5317752Z tidy error: /checkout/src/libcore/num/mod.rs:5321: line longer than 100 chars
2019-11-10T17:37:10.5317796Z tidy error: /checkout/src/libcore/num/mod.rs:5322: line longer than 100 chars
2019-11-10T17:37:12.2724104Z Found 485 error codes
2019-11-10T17:37:12.2724955Z Found 0 error codes with no tests
2019-11-10T17:37:12.2725162Z Done!
2019-11-10T17:37:12.2725292Z some tidy checks failed
2019-11-10T17:37:12.2725292Z some tidy checks failed
2019-11-10T17:37:12.2733181Z 
2019-11-10T17:37:12.2733307Z 
2019-11-10T17:37:12.2734410Z command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/tidy" "/checkout/src" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "--no-vendor"
2019-11-10T17:37:12.2734737Z 
2019-11-10T17:37:12.2734920Z 
2019-11-10T17:37:12.2738468Z failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test src/tools/tidy
2019-11-10T17:37:12.2738743Z Build completed unsuccessfully in 0:01:34
2019-11-10T17:37:12.2738743Z Build completed unsuccessfully in 0:01:34
2019-11-10T17:37:12.2793842Z == clock drift check ==
2019-11-10T17:37:12.2825410Z   local time: Sun Nov 10 17:37:12 UTC 2019
2019-11-10T17:37:12.3173372Z   network time: Sun, 10 Nov 2019 17:37:12 GMT
2019-11-10T17:37:12.3177657Z == end clock drift check ==
2019-11-10T17:37:13.6386906Z 
2019-11-10T17:37:13.6503819Z ##[error]Bash exited with code '1'.
2019-11-10T17:37:13.6532504Z ##[section]Starting: Checkout
2019-11-10T17:37:13.6534425Z ==============================================================================
2019-11-10T17:37:13.6534510Z Task         : Get sources
2019-11-10T17:37:13.6534852Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@jonas-schievink jonas-schievink added relnotes Marks issues that should be documented in the release notes of the next release. T-libs-api Relevant to the library API team, which will review and decide on the PR/issue. labels Nov 11, 2019
@jonas-schievink jonas-schievink added this to the 1.41 milestone Nov 11, 2019
nzint_impl_from! { NonZeroU8, NonZeroUsize, #[unstable(feature = "nz_int_conv", issue = "66196")] }
nzint_impl_from! { NonZeroU16, NonZeroU32, #[unstable(feature = "nz_int_conv", issue = "66196")] }
nzint_impl_from! { NonZeroU16, NonZeroU64, #[unstable(feature = "nz_int_conv", issue = "66196")] }
nzint_impl_from! { NonZeroU16, NonZeroU128, #[unstable(feature = "nz_int_conv", issue = "66196")] }

This comment was marked as resolved.

nzint_impl_from! { NonZeroI8, NonZeroIsize, #[unstable(feature = "nz_int_conv", issue = "66196")] }
nzint_impl_from! { NonZeroI16, NonZeroI32, #[unstable(feature = "nz_int_conv", issue = "66196")] }
nzint_impl_from! { NonZeroI16, NonZeroI64, #[unstable(feature = "nz_int_conv", issue = "66196")] }
nzint_impl_from! { NonZeroI16, NonZeroI128, #[unstable(feature = "nz_int_conv", issue = "66196")] }

This comment was marked as resolved.

@hellow554

This comment has been minimized.

}

// Non-zero Unsigned -> Non-zero Unsigned
nzint_impl_from! { NonZeroU8, NonZeroU16, #[unstable(feature = "nz_int_conv", issue = "66196")] }

This comment was marked as resolved.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aren't trait impls insta-stable? If so, I am not sure if tracking issue makes sense.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@newpavlov you're right. Insta stability is something I hadn't in mind, but peter already fixed that ;)

@JohnCSimon
Copy link
Member

Ping from triage:
@kennytm Can you please review this PR?
cc: @peter-wilkins @hellow554 @nagisa

Thanks

@JohnCSimon
Copy link
Member

Pinging again from triage:
@kennytm Can you please review this PR?

@kennytm
Copy link
Member

kennytm commented Nov 24, 2019

r? @SimonSapin

This is insta-stable and thus requires FCP from @rust-lang/libs.

@rust-highfive rust-highfive assigned SimonSapin and unassigned kennytm Nov 24, 2019
@SimonSapin
Copy link
Contributor

r=me on the implementation, and indeed let’s get team consensus for new impls:

@rfcbot fcp merge

@rfcbot
Copy link

rfcbot commented Nov 24, 2019

Team member @SimonSapin has proposed to merge this. The next step is review by the rest of the tagged team members:

No concerns currently listed.

Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

See this document for info about what commands tagged team members can give me.

@rfcbot rfcbot added proposed-final-comment-period Proposed to merge/close by relevant subteam, see T-<team> label. Will enter FCP once signed off. disposition-merge This issue / PR is in PFCP or FCP with a disposition to merge it. labels Nov 24, 2019
@SimonSapin SimonSapin removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Nov 24, 2019
@hdhoang hdhoang added the S-waiting-on-team Status: Awaiting decision from the relevant subteam (see the T-<team> label). label Nov 28, 2019
@SimonSapin
Copy link
Contributor

@bors r+

@rfcbot rfcbot removed the proposed-final-comment-period Proposed to merge/close by relevant subteam, see T-<team> label. Will enter FCP once signed off. label Nov 29, 2019
@rfcbot
Copy link

rfcbot commented Nov 29, 2019

🔔 This is now entering its final comment period, as per the review above. 🔔

@SimonSapin
Copy link
Contributor

Oh I misread and thought FCP was finished.

@bors r-

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Nov 29, 2019
@SimonSapin SimonSapin added S-waiting-on-fcp Status: PR is in FCP and is awaiting for FCP to complete. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Nov 29, 2019
@bors
Copy link
Contributor

bors commented Dec 7, 2019

☔ The latest upstream changes (presumably #67104) made this pull request unmergeable. Please resolve the merge conflicts.

@bors bors added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Dec 7, 2019
@kennytm kennytm removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Dec 7, 2019
@Dylan-DPC-zz
Copy link

@SimonSapin it is finished now (though we have to wait for @peter-wilkins to resolve the conflict)

@SimonSapin
Copy link
Contributor

As far as I can tell it finishes in two days.

@Dylan-DPC-zz
Copy link

Ah true 😆

@rust-highfive
Copy link
Collaborator

The job mingw-check of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-12-08T23:20:28.7642126Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-12-08T23:20:28.7858663Z ##[command]git config gc.auto 0
2019-12-08T23:20:28.7951339Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-12-08T23:20:28.8014452Z ##[command]git config --get-all http.proxy
2019-12-08T23:20:28.8164513Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/66277/merge:refs/remotes/pull/66277/merge
---
2019-12-08T23:25:01.9864428Z Checking rustdoc artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-12-08T23:25:01.9887687Z Checking std artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-12-08T23:25:02.3711135Z    Compiling cc v1.0.47
2019-12-08T23:25:02.3711579Z     Checking core v0.0.0 (/checkout/src/libcore)
2019-12-08T23:25:04.9152264Z error[E0412]: cannot find type `NonZeroU8` in this scope
2019-12-08T23:25:04.9154404Z     |
2019-12-08T23:25:04.9154404Z     |
2019-12-08T23:25:04.9154848Z 398 | nzint_impl_from! { NonZeroU8, NonZeroU16, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:04.9155529Z     |
2019-12-08T23:25:04.9155852Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:04.9156327Z     |
2019-12-08T23:25:04.9156613Z 1   | use crate::num::NonZeroU8;
2019-12-08T23:25:04.9156613Z 1   | use crate::num::NonZeroU8;
2019-12-08T23:25:04.9157190Z     |
2019-12-08T23:25:04.9157710Z 
2019-12-08T23:25:04.9274056Z error[E0412]: cannot find type `NonZeroU16` in this scope
2019-12-08T23:25:04.9275024Z     |
2019-12-08T23:25:04.9275024Z     |
2019-12-08T23:25:04.9275456Z 398 | nzint_impl_from! { NonZeroU8, NonZeroU16, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:04.9276507Z     |
2019-12-08T23:25:04.9277176Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:04.9277660Z     |
2019-12-08T23:25:04.9277969Z 1   | use crate::num::NonZeroU16;
2019-12-08T23:25:04.9277969Z 1   | use crate::num::NonZeroU16;
2019-12-08T23:25:04.9278205Z     |
2019-12-08T23:25:04.9278286Z 
2019-12-08T23:25:04.9588819Z error[E0412]: cannot find type `NonZeroU8` in this scope
2019-12-08T23:25:04.9589651Z     |
2019-12-08T23:25:04.9589651Z     |
2019-12-08T23:25:04.9590196Z 399 | nzint_impl_from! { NonZeroU8, NonZeroU32, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:04.9591000Z     |
2019-12-08T23:25:04.9591304Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:04.9591570Z     |
2019-12-08T23:25:04.9591902Z 1   | use crate::num::NonZeroU8;
2019-12-08T23:25:04.9591902Z 1   | use crate::num::NonZeroU8;
2019-12-08T23:25:04.9592325Z     |
2019-12-08T23:25:04.9594509Z 
2019-12-08T23:25:04.9714960Z error[E0412]: cannot find type `NonZeroU32` in this scope
2019-12-08T23:25:04.9715525Z     |
2019-12-08T23:25:04.9715525Z     |
2019-12-08T23:25:04.9715889Z 399 | nzint_impl_from! { NonZeroU8, NonZeroU32, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:04.9716484Z     |
2019-12-08T23:25:04.9716800Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:04.9717020Z     |
2019-12-08T23:25:04.9717300Z 1   | use crate::num::NonZeroU32;
2019-12-08T23:25:04.9717300Z 1   | use crate::num::NonZeroU32;
2019-12-08T23:25:04.9717545Z     |
2019-12-08T23:25:04.9721378Z 
2019-12-08T23:25:04.9993870Z error[E0412]: cannot find type `NonZeroU8` in this scope
2019-12-08T23:25:04.9994547Z     |
2019-12-08T23:25:04.9994547Z     |
2019-12-08T23:25:04.9994891Z 400 | nzint_impl_from! { NonZeroU8, NonZeroU64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:04.9995497Z     |
2019-12-08T23:25:04.9995792Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:04.9996220Z     |
2019-12-08T23:25:04.9996544Z 1   | use crate::num::NonZeroU8;
2019-12-08T23:25:04.9996544Z 1   | use crate::num::NonZeroU8;
2019-12-08T23:25:04.9996773Z     |
2019-12-08T23:25:05.0000888Z 
2019-12-08T23:25:05.0115521Z error[E0412]: cannot find type `NonZeroU64` in this scope
2019-12-08T23:25:05.0116413Z     |
2019-12-08T23:25:05.0116413Z     |
2019-12-08T23:25:05.0116791Z 400 | nzint_impl_from! { NonZeroU8, NonZeroU64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.0117522Z     |
2019-12-08T23:25:05.0117861Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.0118170Z     |
2019-12-08T23:25:05.0118503Z 1   | use crate::num::NonZeroU64;
2019-12-08T23:25:05.0118503Z 1   | use crate::num::NonZeroU64;
2019-12-08T23:25:05.0118771Z     |
2019-12-08T23:25:05.0123047Z 
2019-12-08T23:25:05.0412315Z error[E0412]: cannot find type `NonZeroU8` in this scope
2019-12-08T23:25:05.0412911Z     |
2019-12-08T23:25:05.0412911Z     |
2019-12-08T23:25:05.0413285Z 401 | nzint_impl_from! { NonZeroU8, NonZeroU128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.0413906Z     |
2019-12-08T23:25:05.0414204Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.0414431Z     |
2019-12-08T23:25:05.0414881Z 1   | use crate::num::NonZeroU8;
2019-12-08T23:25:05.0414881Z 1   | use crate::num::NonZeroU8;
2019-12-08T23:25:05.0415104Z     |
2019-12-08T23:25:05.0418820Z 
2019-12-08T23:25:05.0524868Z error[E0412]: cannot find type `NonZeroU128` in this scope
2019-12-08T23:25:05.0525584Z     |
2019-12-08T23:25:05.0525584Z     |
2019-12-08T23:25:05.0526328Z 401 | nzint_impl_from! { NonZeroU8, NonZeroU128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.0526907Z     |
2019-12-08T23:25:05.0527391Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.0527625Z     |
2019-12-08T23:25:05.0527912Z 1   | use crate::num::NonZeroU128;
2019-12-08T23:25:05.0527912Z 1   | use crate::num::NonZeroU128;
2019-12-08T23:25:05.0528136Z     |
2019-12-08T23:25:05.0532307Z 
2019-12-08T23:25:05.0814081Z error[E0412]: cannot find type `NonZeroU8` in this scope
2019-12-08T23:25:05.0814694Z     |
2019-12-08T23:25:05.0814694Z     |
2019-12-08T23:25:05.0815282Z 402 | nzint_impl_from! { NonZeroU8, NonZeroUsize, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.0816156Z     |
2019-12-08T23:25:05.0816605Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.0816872Z     |
2019-12-08T23:25:05.0817171Z 1   | use crate::num::NonZeroU8;
2019-12-08T23:25:05.0817171Z 1   | use crate::num::NonZeroU8;
2019-12-08T23:25:05.0817430Z     |
2019-12-08T23:25:05.0821392Z 
2019-12-08T23:25:05.0931613Z error[E0412]: cannot find type `NonZeroUsize` in this scope
2019-12-08T23:25:05.0931968Z    --> src/libcore/convert/num.rs:402:31
2019-12-08T23:25:05.0932385Z     |
2019-12-08T23:25:05.0932730Z 402 | nzint_impl_from! { NonZeroU8, NonZeroUsize, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.0933335Z     |
2019-12-08T23:25:05.0933625Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.0933871Z     |
2019-12-08T23:25:05.0934146Z 1   | use crate::num::NonZeroUsize;
2019-12-08T23:25:05.0934146Z 1   | use crate::num::NonZeroUsize;
2019-12-08T23:25:05.0934368Z     |
2019-12-08T23:25:05.0938756Z 
2019-12-08T23:25:05.1188871Z error[E0412]: cannot find type `NonZeroU16` in this scope
2019-12-08T23:25:05.1189541Z     |
2019-12-08T23:25:05.1189541Z     |
2019-12-08T23:25:05.1189928Z 403 | nzint_impl_from! { NonZeroU16, NonZeroU32, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.1190586Z     |
2019-12-08T23:25:05.1190909Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.1191197Z     |
2019-12-08T23:25:05.1191552Z 1   | use crate::num::NonZeroU16;
2019-12-08T23:25:05.1191552Z 1   | use crate::num::NonZeroU16;
2019-12-08T23:25:05.1191828Z     |
2019-12-08T23:25:05.1196469Z 
2019-12-08T23:25:05.1313531Z error[E0412]: cannot find type `NonZeroU32` in this scope
2019-12-08T23:25:05.1314145Z     |
2019-12-08T23:25:05.1314145Z     |
2019-12-08T23:25:05.1314576Z 403 | nzint_impl_from! { NonZeroU16, NonZeroU32, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.1315207Z     |
2019-12-08T23:25:05.1315645Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.1315932Z     |
2019-12-08T23:25:05.1316535Z 1   | use crate::num::NonZeroU32;
2019-12-08T23:25:05.1316535Z 1   | use crate::num::NonZeroU32;
2019-12-08T23:25:05.1316889Z     |
2019-12-08T23:25:05.1321756Z 
2019-12-08T23:25:05.1652931Z error[E0412]: cannot find type `NonZeroU16` in this scope
2019-12-08T23:25:05.1653999Z     |
2019-12-08T23:25:05.1653999Z     |
2019-12-08T23:25:05.1654336Z 404 | nzint_impl_from! { NonZeroU16, NonZeroU64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.1655323Z     |
2019-12-08T23:25:05.1655637Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.1655934Z     |
2019-12-08T23:25:05.1656247Z 1   | use crate::num::NonZeroU16;
2019-12-08T23:25:05.1656247Z 1   | use crate::num::NonZeroU16;
2019-12-08T23:25:05.1656501Z     |
2019-12-08T23:25:05.1660542Z 
2019-12-08T23:25:05.1777866Z error[E0412]: cannot find type `NonZeroU64` in this scope
2019-12-08T23:25:05.1778499Z     |
2019-12-08T23:25:05.1778499Z     |
2019-12-08T23:25:05.1778858Z 404 | nzint_impl_from! { NonZeroU16, NonZeroU64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.1779488Z     |
2019-12-08T23:25:05.1779793Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.1780028Z     |
2019-12-08T23:25:05.1780335Z 1   | use crate::num::NonZeroU64;
2019-12-08T23:25:05.1780335Z 1   | use crate::num::NonZeroU64;
2019-12-08T23:25:05.1780577Z     |
2019-12-08T23:25:05.1785408Z 
2019-12-08T23:25:05.2068549Z error[E0412]: cannot find type `NonZeroU16` in this scope
2019-12-08T23:25:05.2069183Z     |
2019-12-08T23:25:05.2069183Z     |
2019-12-08T23:25:05.2069600Z 405 | nzint_impl_from! { NonZeroU16, NonZeroU128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.2070426Z     |
2019-12-08T23:25:05.2070745Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.2071016Z     |
2019-12-08T23:25:05.2071369Z 1   | use crate::num::NonZeroU16;
2019-12-08T23:25:05.2071369Z 1   | use crate::num::NonZeroU16;
2019-12-08T23:25:05.2071635Z     |
2019-12-08T23:25:05.2076331Z 
2019-12-08T23:25:05.2188783Z error[E0412]: cannot find type `NonZeroU128` in this scope
2019-12-08T23:25:05.2189395Z     |
2019-12-08T23:25:05.2189395Z     |
2019-12-08T23:25:05.2189926Z 405 | nzint_impl_from! { NonZeroU16, NonZeroU128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.2190790Z     |
2019-12-08T23:25:05.2191325Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.2191731Z     |
2019-12-08T23:25:05.2192174Z 1   | use crate::num::NonZeroU128;
2019-12-08T23:25:05.2192174Z 1   | use crate::num::NonZeroU128;
2019-12-08T23:25:05.2192456Z     |
2019-12-08T23:25:05.2196496Z 
2019-12-08T23:25:05.2475851Z error[E0412]: cannot find type `NonZeroU16` in this scope
2019-12-08T23:25:05.2476477Z     |
2019-12-08T23:25:05.2476477Z     |
2019-12-08T23:25:05.2476811Z 406 | nzint_impl_from! { NonZeroU16, NonZeroUsize, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.2477750Z     |
2019-12-08T23:25:05.2478043Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.2478282Z     |
2019-12-08T23:25:05.2478743Z 1   | use crate::num::NonZeroU16;
2019-12-08T23:25:05.2478743Z 1   | use crate::num::NonZeroU16;
2019-12-08T23:25:05.2478976Z     |
2019-12-08T23:25:05.2483418Z 
2019-12-08T23:25:05.2602906Z error[E0412]: cannot find type `NonZeroUsize` in this scope
2019-12-08T23:25:05.2603261Z    --> src/libcore/convert/num.rs:406:32
2019-12-08T23:25:05.2603515Z     |
2019-12-08T23:25:05.2603852Z 406 | nzint_impl_from! { NonZeroU16, NonZeroUsize, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.2604435Z     |
2019-12-08T23:25:05.2604726Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.2604977Z     |
2019-12-08T23:25:05.2605285Z 1   | use crate::num::NonZeroUsize;
2019-12-08T23:25:05.2605285Z 1   | use crate::num::NonZeroUsize;
2019-12-08T23:25:05.2605525Z     |
2019-12-08T23:25:05.2610514Z 
2019-12-08T23:25:05.2880555Z error[E0412]: cannot find type `NonZeroU32` in this scope
2019-12-08T23:25:05.2881407Z     |
2019-12-08T23:25:05.2881407Z     |
2019-12-08T23:25:05.2881767Z 407 | nzint_impl_from! { NonZeroU32, NonZeroU64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.2882350Z     |
2019-12-08T23:25:05.2882663Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.2883046Z     |
2019-12-08T23:25:05.2883456Z 1   | use crate::num::NonZeroU32;
2019-12-08T23:25:05.2883456Z 1   | use crate::num::NonZeroU32;
2019-12-08T23:25:05.2883927Z     |
2019-12-08T23:25:05.2897259Z 
2019-12-08T23:25:05.2994210Z error[E0412]: cannot find type `NonZeroU64` in this scope
2019-12-08T23:25:05.2994991Z     |
2019-12-08T23:25:05.2994991Z     |
2019-12-08T23:25:05.2995337Z 407 | nzint_impl_from! { NonZeroU32, NonZeroU64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.2995930Z     |
2019-12-08T23:25:05.2996223Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.2996479Z     |
2019-12-08T23:25:05.2996756Z 1   | use crate::num::NonZeroU64;
2019-12-08T23:25:05.2996756Z 1   | use crate::num::NonZeroU64;
2019-12-08T23:25:05.2996976Z     |
2019-12-08T23:25:05.3001032Z 
2019-12-08T23:25:05.3275207Z error[E0412]: cannot find type `NonZeroU32` in this scope
2019-12-08T23:25:05.3276270Z     |
2019-12-08T23:25:05.3276270Z     |
2019-12-08T23:25:05.3276608Z 408 | nzint_impl_from! { NonZeroU32, NonZeroU128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.3277175Z     |
2019-12-08T23:25:05.3277471Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.3277691Z     |
2019-12-08T23:25:05.3277974Z 1   | use crate::num::NonZeroU32;
2019-12-08T23:25:05.3277974Z 1   | use crate::num::NonZeroU32;
2019-12-08T23:25:05.3278189Z     |
2019-12-08T23:25:05.3282385Z 
2019-12-08T23:25:05.3392701Z error[E0412]: cannot find type `NonZeroU128` in this scope
2019-12-08T23:25:05.3393318Z     |
2019-12-08T23:25:05.3393318Z     |
2019-12-08T23:25:05.3393735Z 408 | nzint_impl_from! { NonZeroU32, NonZeroU128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.3394418Z     |
2019-12-08T23:25:05.3394745Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.3394995Z     |
2019-12-08T23:25:05.3395449Z 1   | use crate::num::NonZeroU128;
2019-12-08T23:25:05.3395449Z 1   | use crate::num::NonZeroU128;
2019-12-08T23:25:05.3395701Z     |
2019-12-08T23:25:05.3400140Z 
2019-12-08T23:25:05.3691711Z error[E0412]: cannot find type `NonZeroU64` in this scope
2019-12-08T23:25:05.3692374Z     |
2019-12-08T23:25:05.3692374Z     |
2019-12-08T23:25:05.3692756Z 409 | nzint_impl_from! { NonZeroU64, NonZeroU128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.3693619Z     |
2019-12-08T23:25:05.3693961Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.3694403Z     |
2019-12-08T23:25:05.3694734Z 1   | use crate::num::NonZeroU64;
2019-12-08T23:25:05.3694734Z 1   | use crate::num::NonZeroU64;
2019-12-08T23:25:05.3695183Z     |
2019-12-08T23:25:05.3700023Z 
2019-12-08T23:25:05.3819197Z error[E0412]: cannot find type `NonZeroU128` in this scope
2019-12-08T23:25:05.3819777Z     |
2019-12-08T23:25:05.3819777Z     |
2019-12-08T23:25:05.3820134Z 409 | nzint_impl_from! { NonZeroU64, NonZeroU128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.3820710Z     |
2019-12-08T23:25:05.3821005Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.3821428Z     |
2019-12-08T23:25:05.3821704Z 1   | use crate::num::NonZeroU128;
2019-12-08T23:25:05.3821704Z 1   | use crate::num::NonZeroU128;
2019-12-08T23:25:05.3821925Z     |
2019-12-08T23:25:05.3826328Z 
2019-12-08T23:25:05.4160598Z error[E0412]: cannot find type `NonZeroI8` in this scope
2019-12-08T23:25:05.4161464Z     |
2019-12-08T23:25:05.4161464Z     |
2019-12-08T23:25:05.4161873Z 412 | nzint_impl_from! { NonZeroI8, NonZeroI16, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.4162535Z     |
2019-12-08T23:25:05.4162867Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.4163116Z     |
2019-12-08T23:25:05.4163434Z 1   | use crate::num::NonZeroI8;
2019-12-08T23:25:05.4163434Z 1   | use crate::num::NonZeroI8;
2019-12-08T23:25:05.4163688Z     |
2019-12-08T23:25:05.4168022Z 
2019-12-08T23:25:05.5611015Z error[E0412]: cannot find type `NonZeroI16` in this scope
2019-12-08T23:25:05.5611671Z     |
2019-12-08T23:25:05.5611671Z     |
2019-12-08T23:25:05.5612065Z 412 | nzint_impl_from! { NonZeroI8, NonZeroI16, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5612753Z     |
2019-12-08T23:25:05.5613084Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5613334Z     |
2019-12-08T23:25:05.5613654Z 1   | use crate::num::NonZeroI16;
2019-12-08T23:25:05.5613654Z 1   | use crate::num::NonZeroI16;
2019-12-08T23:25:05.5614085Z     |
2019-12-08T23:25:05.5619292Z 
2019-12-08T23:25:05.5625249Z error[E0412]: cannot find type `NonZeroI8` in this scope
2019-12-08T23:25:05.5625866Z     |
2019-12-08T23:25:05.5625866Z     |
2019-12-08T23:25:05.5626449Z 413 | nzint_impl_from! { NonZeroI8, NonZeroI32, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5627097Z     |
2019-12-08T23:25:05.5627434Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5627733Z     |
2019-12-08T23:25:05.5628073Z 1   | use crate::num::NonZeroI8;
2019-12-08T23:25:05.5628073Z 1   | use crate::num::NonZeroI8;
2019-12-08T23:25:05.5628361Z     |
2019-12-08T23:25:05.5632789Z 
2019-12-08T23:25:05.5638754Z error[E0412]: cannot find type `NonZeroI32` in this scope
2019-12-08T23:25:05.5639379Z     |
2019-12-08T23:25:05.5639379Z     |
2019-12-08T23:25:05.5639755Z 413 | nzint_impl_from! { NonZeroI8, NonZeroI32, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5640406Z     |
2019-12-08T23:25:05.5640735Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5641038Z     |
2019-12-08T23:25:05.5641374Z 1   | use crate::num::NonZeroI32;
2019-12-08T23:25:05.5641374Z 1   | use crate::num::NonZeroI32;
2019-12-08T23:25:05.5641639Z     |
2019-12-08T23:25:05.5681176Z 
2019-12-08T23:25:05.5681803Z error[E0412]: cannot find type `NonZeroI8` in this scope
2019-12-08T23:25:05.5682415Z     |
2019-12-08T23:25:05.5682415Z     |
2019-12-08T23:25:05.5682795Z 414 | nzint_impl_from! { NonZeroI8, NonZeroI64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5683454Z     |
2019-12-08T23:25:05.5683780Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5684032Z     |
2019-12-08T23:25:05.5684357Z 1   | use crate::num::NonZeroI8;
2019-12-08T23:25:05.5684357Z 1   | use crate::num::NonZeroI8;
2019-12-08T23:25:05.5684618Z     |
2019-12-08T23:25:05.5684653Z 
2019-12-08T23:25:05.5684969Z error[E0412]: cannot find type `NonZeroI64` in this scope
2019-12-08T23:25:05.5685903Z     |
2019-12-08T23:25:05.5685903Z     |
2019-12-08T23:25:05.5687392Z 414 | nzint_impl_from! { NonZeroI8, NonZeroI64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5688200Z     |
2019-12-08T23:25:05.5688611Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5688879Z     |
2019-12-08T23:25:05.5690380Z 1   | use crate::num::NonZeroI64;
2019-12-08T23:25:05.5690380Z 1   | use crate::num::NonZeroI64;
2019-12-08T23:25:05.5690680Z     |
2019-12-08T23:25:05.5690716Z 
2019-12-08T23:25:05.5691010Z error[E0412]: cannot find type `NonZeroI8` in this scope
2019-12-08T23:25:05.5691653Z     |
2019-12-08T23:25:05.5691653Z     |
2019-12-08T23:25:05.5692040Z 415 | nzint_impl_from! { NonZeroI8, NonZeroI128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5692682Z     |
2019-12-08T23:25:05.5692997Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5693656Z     |
2019-12-08T23:25:05.5693977Z 1   | use crate::num::NonZeroI8;
2019-12-08T23:25:05.5693977Z 1   | use crate::num::NonZeroI8;
2019-12-08T23:25:05.5694225Z     |
2019-12-08T23:25:05.5694258Z 
2019-12-08T23:25:05.5694578Z error[E0412]: cannot find type `NonZeroI128` in this scope
2019-12-08T23:25:05.5695421Z     |
2019-12-08T23:25:05.5695421Z     |
2019-12-08T23:25:05.5695803Z 415 | nzint_impl_from! { NonZeroI8, NonZeroI128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5696423Z     |
2019-12-08T23:25:05.5696958Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5697380Z     |
2019-12-08T23:25:05.5697699Z 1   | use crate::num::NonZeroI128;
2019-12-08T23:25:05.5697699Z 1   | use crate::num::NonZeroI128;
2019-12-08T23:25:05.5697951Z     |
2019-12-08T23:25:05.5697985Z 
2019-12-08T23:25:05.5698671Z error[E0412]: cannot find type `NonZeroI8` in this scope
2019-12-08T23:25:05.5699254Z     |
2019-12-08T23:25:05.5699254Z     |
2019-12-08T23:25:05.5699629Z 416 | nzint_impl_from! { NonZeroI8, NonZeroIsize, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5700279Z     |
2019-12-08T23:25:05.5700600Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5700895Z     |
2019-12-08T23:25:05.5701222Z 1   | use crate::num::NonZeroI8;
2019-12-08T23:25:05.5701222Z 1   | use crate::num::NonZeroI8;
2019-12-08T23:25:05.5701490Z     |
2019-12-08T23:25:05.5701542Z 
2019-12-08T23:25:05.5701996Z error[E0412]: cannot find type `NonZeroIsize` in this scope
2019-12-08T23:25:05.5702666Z    --> src/libcore/convert/num.rs:416:31
2019-12-08T23:25:05.5702935Z     |
2019-12-08T23:25:05.5703315Z 416 | nzint_impl_from! { NonZeroI8, NonZeroIsize, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5704545Z     |
2019-12-08T23:25:05.5704866Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5705135Z     |
2019-12-08T23:25:05.5705486Z 1   | use crate::num::NonZeroIsize;
2019-12-08T23:25:05.5705486Z 1   | use crate::num::NonZeroIsize;
2019-12-08T23:25:05.5705764Z     |
2019-12-08T23:25:05.5705799Z 
2019-12-08T23:25:05.5843153Z error[E0412]: cannot find type `NonZeroI16` in this scope
2019-12-08T23:25:05.5843790Z     |
2019-12-08T23:25:05.5843790Z     |
2019-12-08T23:25:05.5844215Z 417 | nzint_impl_from! { NonZeroI16, NonZeroI32, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5844842Z     |
2019-12-08T23:25:05.5845571Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5845840Z     |
2019-12-08T23:25:05.5846161Z 1   | use crate::num::NonZeroI16;
2019-12-08T23:25:05.5846161Z 1   | use crate::num::NonZeroI16;
2019-12-08T23:25:05.5846437Z     |
2019-12-08T23:25:05.5850671Z 
2019-12-08T23:25:05.5974857Z error[E0412]: cannot find type `NonZeroI32` in this scope
2019-12-08T23:25:05.5975429Z     |
2019-12-08T23:25:05.5975429Z     |
2019-12-08T23:25:05.5975761Z 417 | nzint_impl_from! { NonZeroI16, NonZeroI32, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.5976338Z     |
2019-12-08T23:25:05.5976630Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.5976905Z     |
2019-12-08T23:25:05.5977195Z 1   | use crate::num::NonZeroI32;
2019-12-08T23:25:05.5977195Z 1   | use crate::num::NonZeroI32;
2019-12-08T23:25:05.5977428Z     |
2019-12-08T23:25:05.5981666Z 
2019-12-08T23:25:05.6270501Z error[E0412]: cannot find type `NonZeroI16` in this scope
2019-12-08T23:25:05.6271221Z     |
2019-12-08T23:25:05.6271221Z     |
2019-12-08T23:25:05.6271589Z 418 | nzint_impl_from! { NonZeroI16, NonZeroI64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.6272556Z     |
2019-12-08T23:25:05.6272918Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.6273194Z     |
2019-12-08T23:25:05.6273535Z 1   | use crate::num::NonZeroI16;
2019-12-08T23:25:05.6273535Z 1   | use crate::num::NonZeroI16;
2019-12-08T23:25:05.6273932Z     |
2019-12-08T23:25:05.6278278Z 
2019-12-08T23:25:05.6387725Z error[E0412]: cannot find type `NonZeroI64` in this scope
2019-12-08T23:25:05.6388327Z     |
2019-12-08T23:25:05.6388327Z     |
2019-12-08T23:25:05.6388744Z 418 | nzint_impl_from! { NonZeroI16, NonZeroI64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.6389557Z     |
2019-12-08T23:25:05.6389896Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.6390188Z     |
2019-12-08T23:25:05.6390509Z 1   | use crate::num::NonZeroI64;
2019-12-08T23:25:05.6390509Z 1   | use crate::num::NonZeroI64;
2019-12-08T23:25:05.6390791Z     |
2019-12-08T23:25:05.6394996Z 
2019-12-08T23:25:05.6667564Z error[E0412]: cannot find type `NonZeroI16` in this scope
2019-12-08T23:25:05.6668168Z     |
2019-12-08T23:25:05.6668168Z     |
2019-12-08T23:25:05.6668546Z 419 | nzint_impl_from! { NonZeroI16, NonZeroI128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.6669139Z     |
2019-12-08T23:25:05.6669445Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.6669726Z     |
2019-12-08T23:25:05.6670029Z 1   | use crate::num::NonZeroI16;
2019-12-08T23:25:05.6670029Z 1   | use crate::num::NonZeroI16;
2019-12-08T23:25:05.6670287Z     |
2019-12-08T23:25:05.6675386Z 
2019-12-08T23:25:05.6783417Z error[E0412]: cannot find type `NonZeroI128` in this scope
2019-12-08T23:25:05.6784088Z     |
2019-12-08T23:25:05.6784088Z     |
2019-12-08T23:25:05.6784476Z 419 | nzint_impl_from! { NonZeroI16, NonZeroI128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.6785151Z     |
2019-12-08T23:25:05.6785476Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.6785743Z     |
2019-12-08T23:25:05.6786051Z 1   | use crate::num::NonZeroI128;
2019-12-08T23:25:05.6786051Z 1   | use crate::num::NonZeroI128;
2019-12-08T23:25:05.6786663Z     |
2019-12-08T23:25:05.6790831Z 
2019-12-08T23:25:05.7071373Z error[E0412]: cannot find type `NonZeroI16` in this scope
2019-12-08T23:25:05.7072430Z     |
2019-12-08T23:25:05.7072430Z     |
2019-12-08T23:25:05.7072800Z 420 | nzint_impl_from! { NonZeroI16, NonZeroIsize, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.7073755Z     |
2019-12-08T23:25:05.7074077Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.7074317Z     |
2019-12-08T23:25:05.7074873Z 1   | use crate::num::NonZeroI16;
2019-12-08T23:25:05.7074873Z 1   | use crate::num::NonZeroI16;
2019-12-08T23:25:05.7075289Z     |
2019-12-08T23:25:05.7079980Z 
2019-12-08T23:25:05.7197669Z error[E0412]: cannot find type `NonZeroIsize` in this scope
2019-12-08T23:25:05.7198024Z    --> src/libcore/convert/num.rs:420:32
2019-12-08T23:25:05.7198281Z     |
2019-12-08T23:25:05.7198684Z 420 | nzint_impl_from! { NonZeroI16, NonZeroIsize, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.7199414Z     |
2019-12-08T23:25:05.7199766Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.7200054Z     |
2019-12-08T23:25:05.7200394Z 1   | use crate::num::NonZeroIsize;
2019-12-08T23:25:05.7200394Z 1   | use crate::num::NonZeroIsize;
2019-12-08T23:25:05.7200685Z     |
2019-12-08T23:25:05.7204935Z 
2019-12-08T23:25:05.7486288Z error[E0412]: cannot find type `NonZeroI32` in this scope
2019-12-08T23:25:05.7487013Z     |
2019-12-08T23:25:05.7487013Z     |
2019-12-08T23:25:05.7487394Z 421 | nzint_impl_from! { NonZeroI32, NonZeroI64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.7488035Z     |
2019-12-08T23:25:05.7488361Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.7488711Z     |
2019-12-08T23:25:05.7489018Z 1   | use crate::num::NonZeroI32;
2019-12-08T23:25:05.7489018Z 1   | use crate::num::NonZeroI32;
2019-12-08T23:25:05.7489264Z     |
2019-12-08T23:25:05.7493961Z 
2019-12-08T23:25:05.7606171Z error[E0412]: cannot find type `NonZeroI64` in this scope
2019-12-08T23:25:05.7606768Z     |
2019-12-08T23:25:05.7606768Z     |
2019-12-08T23:25:05.7607108Z 421 | nzint_impl_from! { NonZeroI32, NonZeroI64, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.7607696Z     |
2019-12-08T23:25:05.7608317Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.7608598Z     |
2019-12-08T23:25:05.7608904Z 1   | use crate::num::NonZeroI64;
2019-12-08T23:25:05.7608904Z 1   | use crate::num::NonZeroI64;
2019-12-08T23:25:05.7609789Z     |
2019-12-08T23:25:05.7614825Z 
2019-12-08T23:25:05.7915822Z error[E0412]: cannot find type `NonZeroI32` in this scope
2019-12-08T23:25:05.7916474Z     |
2019-12-08T23:25:05.7916474Z     |
2019-12-08T23:25:05.7916915Z 422 | nzint_impl_from! { NonZeroI32, NonZeroI128, #[stable(feature = "nz_int_conv", since = "1.41.0")] }
2019-12-08T23:25:05.7917592Z     |
2019-12-08T23:25:05.7917926Z help: possible candidate is found in another module, you can import it into scope
2019-12-08T23:25:05.7918214Z     |
2019-12-08T23:25:05.7918567Z 1   | use crate::num::NonZeroI32;
2019-12-08T23:25:05.7918567Z 1   | use crate::num::NonZeroI32;
2019-12-08T23:25:05.7918858Z     |
2019-12-08T23:25:05.7923787Z 
2019-12-08T23:25:05.8038060Z error[E0412]: cannot find type `NonZeroI128` in this scope
---
2019-12-08T23:25:14.1748621Z   local time: Sun Dec  8 23:25:14 UTC 2019
2019-12-08T23:25:14.4377401Z   network time: Sun, 08 Dec 2019 23:25:14 GMT
2019-12-08T23:25:14.4379012Z == end clock drift check ==
2019-12-08T23:25:27.6808682Z 
2019-12-08T23:25:27.6901773Z ##[error]Bash exited with code '1'.
2019-12-08T23:25:27.6926689Z ##[section]Starting: Checkout
2019-12-08T23:25:27.6928188Z ==============================================================================
2019-12-08T23:25:27.6928239Z Task         : Get sources
2019-12-08T23:25:27.6928281Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@rfcbot rfcbot added finished-final-comment-period The final comment period is finished for this PR / Issue. and removed final-comment-period In the final comment period and will be merged soon unless new substantive objections are raised. labels Dec 9, 2019
@rfcbot
Copy link

rfcbot commented Dec 9, 2019

The final comment period, with a disposition to merge, as per the review above, is now complete.

As the automated representative of the governance process, I would like to thank the author for their work and everyone else who contributed.

The RFC will be merged soon.

@kennytm
Copy link
Member

kennytm commented Dec 10, 2019

r? @SimonSapin

@SimonSapin
Copy link
Contributor

Looks like rustfmt was used on one file in a commit that also does something else, possibly accidentally. I don’t really mind enough to make you go back and amend that commit, and other than that the PR looks good, so:

@bors r+

In future PRs, please consider using git show before git push to double check that you’re not accidentally pushing additional changes. And when intentionally using rustfmt, please do so in a separate commit so reviewers can separately look at formatting-only changes v.s. significant changes.

Thanks!

@bors
Copy link
Contributor

bors commented Dec 10, 2019

📌 Commit 8f6a062 has been approved by SimonSapin

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Dec 10, 2019
bors added a commit that referenced this pull request Dec 10, 2019
…onSapin

From<NonZero*> impls for wider NonZero types

Closes: #66291
@bors
Copy link
Contributor

bors commented Dec 10, 2019

⌛ Testing commit 8f6a062 with merge 8960acf...

@bors
Copy link
Contributor

bors commented Dec 10, 2019

☀️ Test successful - checks-azure
Approved by: SimonSapin
Pushing 8960acf to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Dec 10, 2019
@bors bors merged commit 8f6a062 into rust-lang:master Dec 10, 2019
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this pull request Feb 17, 2020
Version 1.41.0 (2020-01-30)
===========================

Language
--------

- [You can now pass type parameters to foreign items when implementing
  traits.][65879] E.g. You can now write `impl<T> From<Foo> for Vec<T> {}`.
- [You can now arbitrarily nest receiver types in the `self` position.][64325] E.g. you can
  now write `fn foo(self: Box<Box<Self>>) {}`. Previously only `Self`, `&Self`,
  `&mut Self`, `Arc<Self>`, `Rc<Self>`, and `Box<Self>` were allowed.
- [You can now use any valid identifier in a `format_args` macro.][66847]
  Previously identifiers starting with an underscore were not allowed.
- [Visibility modifiers (e.g. `pub`) are now syntactically allowed on trait items and
  enum variants.][66183] These are still rejected semantically, but
  can be seen and parsed by procedural macros and conditional compilation.

Compiler
--------

- [Rustc will now warn if you have unused loop `'label`s.][66325]
- [Removed support for the `i686-unknown-dragonfly` target.][67255]
- [Added tier 3 support\* for the `riscv64gc-unknown-linux-gnu` target.][66661]
- [You can now pass an arguments file passing the `@path` syntax
  to rustc.][66172] Note that the format differs somewhat from what is
  found in other tooling; please see [the documentation][argfile-docs] for
  more information.
- [You can now provide `--extern` flag without a path, indicating that it is
  available from the search path or specified with an `-L` flag.][64882]

\* Refer to Rust's [platform support page][forge-platform-support] for more
information on Rust's tiered platform support.

[argfile-docs]: https://doc.rust-lang.org/nightly/rustc/command-line-arguments.html#path-load-command-line-flags-from-a-path

Libraries
---------

- [The `core::panic` module is now stable.][66771] It was already stable
  through `std`.
- [`NonZero*` numerics now implement `From<NonZero*>` if it's a smaller integer
  width.][66277] E.g. `NonZeroU16` now implements `From<NonZeroU8>`.
- [`MaybeUninit<T>` now implements `fmt::Debug`.][65013]

Stabilized APIs
---------------

- [`Result::map_or`]
- [`Result::map_or_else`]
- [`std::rc::Weak::weak_count`]
- [`std::rc::Weak::strong_count`]
- [`std::sync::Weak::weak_count`]
- [`std::sync::Weak::strong_count`]

Cargo
-----

- [Cargo will now document all the private items for binary crates
  by default.][cargo/7593]
- [`cargo-install` will now reinstall the package if it detects that it is out
  of date.][cargo/7560]
- [Cargo.lock now uses a more git friendly format that should help to reduce
  merge conflicts.][cargo/7579]
- [You can now override specific dependencies's build settings][cargo/7591] E.g.
  `[profile.dev.overrides.image] opt-level = 2` sets the `image` crate's
  optimisation level to `2` for debug builds. You can also use
  `[profile.<profile>.build_overrides]` to override build scripts and
  their dependencies.

Misc
----

- [You can now specify `edition` in documentation code blocks to compile the block
  for that edition.][66238] E.g. `edition2018` tells rustdoc that the code sample
  should be compiled the 2018 edition of Rust.
- [You can now provide custom themes to rustdoc with `--theme`, and check the
  current theme with `--check-theme`.][54733]
- [You can use `#[cfg(doc)]` to compile an item when building documentation.][61351]

Compatibility Notes
-------------------

- [As previously announced 1.41.0 will be the last tier 1 release for 32-bit
  Apple targets.][apple-32bit-drop] This means that the source code is still
  available to build, but the targets are no longer being tested and release
  binaries for those platforms will no longer be distributed by the Rust project.
  Please refer to the linked blog post for more information.

[54733]: rust-lang/rust#54733
[61351]: rust-lang/rust#61351
[67255]: rust-lang/rust#67255
[66661]: rust-lang/rust#66661
[66771]: rust-lang/rust#66771
[66847]: rust-lang/rust#66847
[66238]: rust-lang/rust#66238
[66277]: rust-lang/rust#66277
[66325]: rust-lang/rust#66325
[66172]: rust-lang/rust#66172
[66183]: rust-lang/rust#66183
[65879]: rust-lang/rust#65879
[65013]: rust-lang/rust#65013
[64882]: rust-lang/rust#64882
[64325]: rust-lang/rust#64325
[cargo/7560]: rust-lang/cargo#7560
[cargo/7579]: rust-lang/cargo#7579
[cargo/7591]: rust-lang/cargo#7591
[cargo/7593]: rust-lang/cargo#7593
[`Result::map_or_else`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.map_or_else
[`Result::map_or`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.map_or
[`std::rc::Weak::weak_count`]: https://doc.rust-lang.org/std/rc/struct.Weak.html#method.weak_count
[`std::rc::Weak::strong_count`]: https://doc.rust-lang.org/std/rc/struct.Weak.html#method.strong_count
[`std::sync::Weak::weak_count`]: https://doc.rust-lang.org/std/sync/struct.Weak.html#method.weak_count
[`std::sync::Weak::strong_count`]: https://doc.rust-lang.org/std/sync/struct.Weak.html#method.strong_count
[apple-32bit-drop]: https://blog.rust-lang.org/2020/01/03/reducing-support-for-32-bit-apple-targets.html
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
disposition-merge This issue / PR is in PFCP or FCP with a disposition to merge it. finished-final-comment-period The final comment period is finished for this PR / Issue. merged-by-bors This PR was explicitly merged by bors. relnotes Marks issues that should be documented in the release notes of the next release. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. S-waiting-on-fcp Status: PR is in FCP and is awaiting for FCP to complete. T-libs-api Relevant to the library API team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Tracking issue for From<NonZero*> impls for wider NonZero types