Closed
Description
Building Euclid on nightly now produces a gazillion of warnings that were not there before.
Compiling euclid v0.15.1
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:164:5
|
164 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:178:5
|
178 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:194:5
|
194 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:200:5
|
200 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:216:5
|
216 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:222:5
|
222 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:244:5
|
244 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:250:5
|
250 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:257:5
|
257 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:265:5
|
265 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:274:5
|
274 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform2d.rs:290:5
|
290 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform3d.rs:373:5
|
373 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform3d.rs:460:5
|
460 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform3d.rs:466:5
|
466 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform3d.rs:483:5
|
483 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform3d.rs:494:5
|
494 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform3d.rs:537:5
|
537 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/transform3d.rs:543:5
|
543 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/point.rs:236:5
|
236 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/point.rs:248:5
|
248 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/point.rs:260:5
|
260 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/point.rs:547:5
|
547 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/point.rs:558:5
|
558 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/point.rs:569:5
|
569 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/rect.rs:170:5
|
170 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/rect.rs:195:5
|
195 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/rect.rs:204:5
|
204 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/rect.rs:225:5
|
225 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/rect.rs:397:5
|
397 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/rect.rs:406:5
|
406 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/rect.rs:415:5
|
415 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/vector.rs:269:5
|
269 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/vector.rs:281:5
|
281 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/vector.rs:293:5
|
293 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/vector.rs:616:5
|
616 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/vector.rs:627:5
|
627 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
warning: `#[must_use]` on methods is experimental (see issue #43302)
--> /home/travis/build/servo/servo-with-rust-nightly/servo/.cargo/registry/src/6github.com-1ecc6299db9ec823/euclid-0.15.1/src/vector.rs:638:5
|
638 | #[must_use]
| ^^^^^^^^^^^
|
= help: add #![feature(fn_must_use)] to the crate attributes to enable
Metadata
Metadata
Assignees
Labels
Type
Projects
Milestone
Relationships
Development
No branches or pull requests
Activity
SimonSapin commentedon Aug 31, 2017
This is #43776.
This warning shouldn’t become an error without a epoch/checkpoint since previous stable version accepted code that now warn.
Feature-gating with only a warning rather than an error is a bit pointless. I think #43776 should be reverted.
fn_must_use
#43776SimonSapin commentedon Aug 31, 2017
Or at the very least, this should be made the kind of warning that doesn’t spam downstream users despite
--cap-lints=allow
.kennytm commentedon Aug 31, 2017
Both this and E0122 should repsect
--cap-lints
. There is nothing downstream can do with these warnings. But I disagree reverting #43776 entirely.Did #43728 (
#[must_use]
) / #43776 (add feature gate) enter beta?EDIT: Both did.
zackmdavis commentedon Aug 31, 2017
Unfortunately, the "soft" feature-gate warning (which is just a
.struct_span_warn
) is not respecting--cap-lints=allow
. I can look into this tomorrow (if no one else scoops it up today).zackmdavis commentedon Sep 1, 2017
Also unfortunately, it doesn't look like the feature-gate machinery already has access to the lint-cap setting. I'm having trouble deciding whether it's less terrible/hacky/inelegant/unæsthetic to add it as another argument to
feature_gate::check_crate
or as a field onParseSess
. 😞kennytm commentedon Sep 1, 2017
@zackmdavis Is it possible to switch off the
can_emit_warnings
field oferrors::Handler
when it is constructed? The driver should know the--cap-lints
level while constructing theHandler
.#[must_use]
methods for nightly, fix warnings servo/euclid#225Auto merge of #225 - zackmdavis:conditional_fn_must_use, r=nox
`--cap-lints allow` switches off `can_emit_warnings`
--cap-lints allow
switches offcan_emit_warnings
#44627zackmdavis commentedon Sep 16, 2017
Yes.
Auto merge of #44627 - zackmdavis:the_capgate_perogative, r=nrc
`--cap-lints allow` switches off `can_emit_warnings`