-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
Can't compile brotli with rustc 1.27.0-nightly (2f2a11dfc 2018-05-16) #50825
Comments
Note that the report mentioned No repro on Edit: Repro on Note: [package]
name = "brotli"
# ...
exclude = ["src/bin/testdata/*"]
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ but then the tests cannot be compiled because it relies on those testdata 😒
|
Diesel is affected too
|
Bisection gives #48557 as the regression PR cc @matthewjasper @nikomatsakis |
Diesel issue seems unrelated.
…On Thu, May 17, 2018, 12:02 Bastien Orivel ***@***.***> wrote:
Diesel is affected too
error[E0053]: method `metadata` has an incompatible type for trait
--> diesel/src/pg/types/array.rs:14:25
|
14 | fn metadata(lookup: &PgMetadataLookup) -> PgTypeMetadata {
| ^^^^^^^^^^^^^^^^^ expected associated type, found struct `pg::metadata_lookup::PgMetadataLookup`
|
::: diesel/src/sql_types/mod.rs:402:25
|
402 | fn metadata(lookup: &Self::MetadataLookup) -> Self::TypeMetadata;
| --------------------- type in trait
|
= note: expected type `fn(&<pg::backend::Pg as sql_types::TypeMetadata>::MetadataLookup) -> <pg::backend::Pg as sql_types::TypeMetadata>::TypeMetadata`
found type `fn(&pg::metadata_lookup::PgMetadataLookup) -> pg::backend::PgTypeMetadata`
—
You are receiving this because you are on a team that was mentioned.
Reply to this email directly, view it on GitHub
<#50825 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AApc0nd9guDe4-d0KtEu2_xxXzZNa1PKks5tzTyhgaJpZM4UClUv>
.
|
Can we verify if the Diesel regression is related or not? cc @sgrif |
I'm looking at this. Minified brotli issue: fn foo(y: &[()]) where u64: Copy // or From<u64>
{
let x = y[0]; // u64: std::slice::SliceIndex<[()]>` is not satisfied
} |
Minified diesel issue: trait X {
type T;
}
trait Y<U>: X {
fn foo(x: &Self::T);
}
impl X for () {
type T = ();
}
impl<T> Y<Vec<T>> for () where (): Y<T> {
fn foo(_x: &()) {}
} I'll try to get a patch to either fix this or roll back some of the changes in #48557 (more likely) ready tomorrow. |
…atsakis Filter global bounds from ParamEnv again. This PR adds back the filtering of global bounds from ParamEnv as a temporary solution for #50825. <details> Long term, the fix seems like it should be changing the priority in `candidate_should_be_dropped_in_favor_of` so that (global) where clauses aren't considered as highly. https://github.com/rust-lang/rust/blob/a722296b6ec17fecd3f16a7d3f9232b83e5de800/src/librustc/traits/select.rs#L2017-L2022 </details> r? @nikomatsakis
Reclassifying bug as P-medium since we reverted the PR and hence breakage should be fixed (right @matthewjasper @nox ?) |
I'm still unable to build diesel as of |
|
Diesel v1.2.2 compiles fine for me on |
assigning to self to determine what status is for each of |
Diesel v1.2.2 still works fine with latest nightly but v1.3.0 is indeed broken. |
Can somebody (@RalfJung?) file an issue describing the problem with diesel v1.3.0? (cc @sgrif) Evidently the minimization from @matthewjasper here is not correct, because that seems to work. |
The issue with 1.3.0 looks like #51044
|
…atsakis Re-enable trivial bounds cc #50825 Remove implementations from global bounds in winnowing when there is ambiguity. This results in the reverse of #24066 happening sometimes. I'm not sure if anything can be done about that though. cc #48214 r? @nikomatsakis
Brotli (1.2.0 and 1.1.2) and diesel (1.3.0 and 1.2.2) both compile on the latest nightly (as of #51042). Closing. |
Cc @rust-lang/compiler
The text was updated successfully, but these errors were encountered: