Uh oh!
There was an error while loading. Please reload this page.
Improve SubSupConflict with a named and an anonymous lifetime parameter #42701 - #44167
Conversation
rust-highfive
commented
Aug 29, 2017
r? @pnkfelix (rust_highfive has picked a reviewer for you, use r? to override) |
There was a problem hiding this comment.
#42700
The first snippet of code, that's how the ui test must output
There was a problem hiding this comment.
This is of type ConcreteFailure, not SubSupConflict
There was a problem hiding this comment.
You will have to remove the is_self_anon check. Maybe you can try an example without self, that should work.
nikomatsakis
commented
Aug 30, 2017
nikomatsakis
commented
Aug 30, 2017
I think this is a good test case: structFoo{field:i32,}fnfoo2<'a>(a:&'aFoo,x:&i32) -> &'ai32{iftrue{let p:&i32 = &a.field;&*p
}else{&*x
}}fnmain(){} |
Hi @cengizio! Nice PR! Can you add @nikomatsakis's test so we can see how the errors look and fix this? |
gaurikholkar-zz
commented
Sep 7, 2017
@nikomatsakis can you suggest a test case for anon_anon conflicts too? |
nikomatsakis
commented
Sep 8, 2017
@gaurikholkar I guess that's a bit harder. If you just remove the named lifetime, then the elision rules will fail. You can use an |
bors
commented
Sep 10, 2017
☔ The latest upstream changes (presumably #44079) made this pull request unmergeable. Please resolve the merge conflicts. |
nikomatsakis
commented
Sep 14, 2017
Maybe try this example too? structFoo{field:i32,}fnfoo2<'a,'b>(a:&'aFoo,x:&'bi32) -> &'ai32{iftrue{let p:&i32 = &a.field;&*p
}else{&*x
}}fnmain(){}I imagine this will exercise the "different lifetimes" code a bit. |
You have a tidy error: |
arielb1
commented
Sep 26, 2017
This PR is basically ready to land, you just have to fix the tidy error. Just a ping to make sure this isn't getting lost. |
cengiz-io
commented
Sep 26, 2017
Hello @arielb1 Thanks for notifying. I'm still trying to resolve this example case #44167 (comment) Whenever that finishes, I'll fix tidy error and push them. |
Just fixed tidy error. Also, while rebasing, it turned out to change 3 ui tests. I'm not sure about this because it was an implicit change. 314bb98 @nikomatsakis maybe can shed some light to this implicit change |
cengiz-io
commented
Sep 27, 2017
There seems to be some changes which are breaking other tests also. Back to the drawing board... |
nikomatsakis
commented
Sep 27, 2017
@cengizio those 3 ui tests appear to be bug fixes =) that is, thanks to your change, the 'new and improved' errors are triggering more often. seems good! |
nikomatsakis
commented
Sep 27, 2017
@cengizio also those test errors are not unexpected. I think you just have to update the tests to change them to expect the new error message. However, these tests are a bit surprising to me: I'm not sure what's up with those two cases! |
@nikomatsakis I will also check those two surprising cases and report here. |
nikomatsakis
commented
Oct 3, 2017
@cengizio yes, compile-fail tests have to be edited manually. |
cengiz-io
commented
Oct 8, 2017
@nikomatsakis@arielb1@gaurikholkar hello again! I've updated the test cases. NOTE: I decided to make test assertions in |
gaurikholkar-zz
commented
Oct 8, 2017
@cengizio this test fails I guess you have given the wrong column no for the error |
@gaurikholkar thanks for noticing. The annoying part is, all tests are passing on my local machine. (with latest HEAD). Let's see if this fixes the problem. |
cengiz-io
commented
Oct 8, 2017
Argh! There seems to be line differences between my git clone and travis' copy. I'll investigate this further tomorrow. |
gaurikholkar-zz
commented
Oct 9, 2017
gaurikholkar-zz@cb0d746 |
gaurikholkar-zz
commented
Oct 9, 2017
Ignore the indentation mess |
bors
commented
Nov 9, 2017
☀️ Test successful - status-travis |
kennytm
commented
Nov 9, 2017
@rust-lang/infra Perf check wanted ( |
nikomatsakis
commented
Nov 10, 2017
Looks like try build is ready. cc @rust-lang/infra |
nikomatsakis
commented
Nov 11, 2017
OK so -- the perf results seem fine, but @cengizio and I were discussing that maybe it's still worth replacing the |
nikomatsakis
commented
Nov 12, 2017
bors
commented
Nov 12, 2017
📌 Commit dad7d94 has been approved by |
bors
commented
Nov 12, 2017
⌛ Testing commit dad7d94 with merge 5b1b7b6c84a3e8e723a0416485a228abf756918c... |
bors
commented
Nov 12, 2017
💔 Test failed - status-travis |
nikomatsakis
commented
Nov 12, 2017
@bors r+ |
bors
commented
Nov 12, 2017
📌 Commit f53fc57 has been approved by |
bors
commented
Nov 12, 2017
Improve SubSupConflict with a named and an anonymous lifetime parameter #42701 Hello! This fixes#42701. ## UPDATE 01 Tests are producing different results between different env builds. This inconsistency might take a long time to investigate and fix. So, be patient ## UPDATE 02 Changed an `FxHashMap` with a `BTreeMap`. Inconsistency seems to be resolved for now.
bors
commented
Nov 12, 2017
☀️ Test successful - status-appveyor, status-travis |
Hello!
This fixes#42701.
UPDATE 01
Tests are producing different results between different env builds.
This inconsistency might take a long time to investigate and fix. So, be patient
UPDATE 02
Changed an
FxHashMapwith aBTreeMap. Inconsistency seems to be resolved for now.