Stream: t-compiler/wg-nll

Topic: pre-triage 2019.02.27


pnkfelix (Feb 27 2019 at 13:37, on Zulip):

I'm going to do pre-triage in this stream topic, as an experiment in response to last week's discussion of trying to adjust the meeting structure

pnkfelix (Feb 27 2019 at 13:40, on Zulip):

as usual i'm following the structure presented in our NLL triage paper

pnkfelix (Feb 27 2019 at 13:41, on Zulip):

first, uncategorized issues

pnkfelix (Feb 27 2019 at 13:41, on Zulip):

"NLL migrate mode erroneously downgrades error with nested closures, yielding use-after-free" #58776

pnkfelix (Feb 27 2019 at 13:41, on Zulip):

this is, strictly speaking, a bug in NLL-migrate.

pnkfelix (Feb 27 2019 at 13:42, on Zulip):

but I'm going to tag it as NLL-sound since it does represent code that we should be rejecting

pnkfelix (Feb 27 2019 at 13:43, on Zulip):

its already assigned to @Matthew Jasper

pnkfelix (Feb 27 2019 at 13:43, on Zulip):

I'm going to add myself to the assignee list because I wrote the patch to fix related bug #55492

pnkfelix (Feb 27 2019 at 13:44, on Zulip):

but I'm going to assume, at least for the rest of the day, that @Matthew Jasper is on top of it. Matthew, do let me know if you would rather that I just take over completely on this bug.

lqd (Feb 27 2019 at 13:45, on Zulip):

sounds like p-high ?

pnkfelix (Feb 27 2019 at 13:45, on Zulip):

oh yeah, prioritization, right

pnkfelix (Feb 27 2019 at 13:45, on Zulip):

(we haven't always tagged the P- labels as part of triage, but we should) what was I talking about, its the very next bullet on the agenda. Oh, I guess we've failed to actually add P-tags in general though

pnkfelix (Feb 27 2019 at 13:45, on Zulip):

lets make that P-high

pnkfelix (Feb 27 2019 at 13:46, on Zulip):

next: "Does the MIR generated for match still build in order-deps visible to MIR-borrowck?" #58646

pnkfelix (Feb 27 2019 at 13:46, on Zulip):

I'll I-nominate this for discussion tonight

pnkfelix (Feb 27 2019 at 13:51, on Zulip):

I think the appropriate tag here is NLL-complete, in the sense that the choice here is not about rejecting an instance of unsound code, but rather just restricting the set of accepted programs in order to provide for future flexibility.

pnkfelix (Feb 27 2019 at 13:53, on Zulip):

next: unprioritized issues

pnkfelix (Feb 27 2019 at 13:55, on Zulip):

first: "Getter functions and indexing don't seem to follow the same lifetime rules" #58419

pnkfelix (Feb 27 2019 at 13:55, on Zulip):

I made a comment on this ticket and added some labels two weeks ago, but didn't prioritize it

pnkfelix (Feb 27 2019 at 13:56, on Zulip):

it seems like it is probably P-medium

pnkfelix (Feb 27 2019 at 13:56, on Zulip):

(my current hypothesis is that the noted discrepancy is probably due to how 2-phase borrows are currently defined. But I have not confirmed that hypothesis.)

pnkfelix (Feb 27 2019 at 13:59, on Zulip):

next: "NLL compile-time performance regression" #58178

pnkfelix (Feb 27 2019 at 14:00, on Zulip):

it seems like the current status here is that @Matthew Jasper has been working on getting a benchmark landed on perf

pnkfelix (Feb 27 2019 at 14:01, on Zulip):

but there is of course the separate task of actually profiling the remaining slow down

pnkfelix (Feb 27 2019 at 14:01, on Zulip):

hmm. I think I'm going to skip NLL-performant issues for right now. I don't feel comfortable just tagging them as P-medium (or P-low), but I also don't think they immediately deserve prioritization.

pnkfelix (Feb 27 2019 at 14:02, on Zulip):

okay, next: "issue triage: closures, lifetimes, and nll" #57964

pnkfelix (Feb 27 2019 at 14:03, on Zulip):

(does this qualify as a meta-bug?)

pnkfelix (Feb 27 2019 at 14:36, on Zulip):

okay spent a little while going over the list in #57964 . Then decided it is indeed a metabug and thus does not get a P-label

pnkfelix (Feb 27 2019 at 14:37, on Zulip):

next: "NLL: complete transition from migrate to full NLL" #57895

pnkfelix (Feb 27 2019 at 14:37, on Zulip):

I think this is P-high.

pnkfelix (Feb 27 2019 at 14:37, on Zulip):

Or at least, I'm not aware of any fires that should be stealing effort away from this task.

pnkfelix (Feb 27 2019 at 14:38, on Zulip):

(obviously things like fixing #56254 would be paramount before moving the 2015 edition to borrowck=migrate)

pnkfelix (Feb 27 2019 at 14:40, on Zulip):

anyway, marking #57895 as P-high and assigning to self.

pnkfelix (Feb 27 2019 at 14:45, on Zulip):

next: "NLL: turn on borrowck=migrate by default on 2015 edition" #57804

pnkfelix (Feb 27 2019 at 14:46, on Zulip):

this is already assigned to me. Marking P-high by same logic as #57895

pnkfelix (Feb 27 2019 at 14:47, on Zulip):

(I think this, #57804, is now solely blocked by PR #58739. Which is super-exciting.)

Matthew Jasper (Feb 27 2019 at 14:47, on Zulip):

Or at least, I'm not aware of any fires that should be stealing effort away from this task.

The fires are all part of this task

pnkfelix (Feb 27 2019 at 14:48, on Zulip):

(I think this, #57804, is now solely blocked by PR #58739. Which is super-exciting.)

or no, there is also PR #57202

pnkfelix (Feb 27 2019 at 14:49, on Zulip):

I put that on my todo list a week ago. Let me take care of reviewing it now.

Matthew Jasper (Feb 27 2019 at 14:49, on Zulip):

(I think this, #57804, is now solely blocked by PR #58739. Which is super-exciting.)

It's blocked on all of my open PRs that aren't marked do not merge.

pnkfelix (Feb 27 2019 at 15:16, on Zulip):

okay done with review

pnkfelix (Feb 27 2019 at 15:17, on Zulip):

reviewing PR #58673 now

Santiago Pastorino (Feb 27 2019 at 15:19, on Zulip):

@pnkfelix I'm not assigned to any of these tasks, do you guys consider I may help somewhere?

pnkfelix (Feb 27 2019 at 15:21, on Zulip):

@Santiago Pastorino maybe you could attack #58776? Hey @Matthew Jasper have you already started work on that, or would you like to hand it off?

pnkfelix (Feb 27 2019 at 15:23, on Zulip):

Lets maybe plan to circle back on the question of [re]distribution of work at the meeting tonight.

Santiago Pastorino (Feb 27 2019 at 15:23, on Zulip):

ok ok, yeah I could take it but let's talk later about it :)

pnkfelix (Feb 27 2019 at 15:24, on Zulip):

matthew self assigned it 3 hours ago so I'm going to work under the assumption that they figured they would fix it easily/quickly

pnkfelix (Feb 27 2019 at 15:25, on Zulip):

that's the only reason I haven't just said "yeah lets re-assign it to @Santiago Pastorino eagerly)

pnkfelix (Feb 27 2019 at 15:25, on Zulip):

@Santiago Pastorino to be honest I had thought your hands were full with the Place 2.0 work, is that not an accurate assessment?

Santiago Pastorino (Feb 27 2019 at 15:26, on Zulip):

yeah yeah, I'm with Place 2.0

Santiago Pastorino (Feb 27 2019 at 15:27, on Zulip):

thing is ... it may happen that meanwhile we agree on some parts of the plan some time pass and I end with some free time

pnkfelix (Feb 27 2019 at 15:27, on Zulip):

ah fair enough

pnkfelix (Feb 27 2019 at 15:43, on Zulip):

Okay. That was a bit of a side-track from my original task of prioritizing

pnkfelix (Feb 27 2019 at 15:45, on Zulip):

Skimming the rest of the unprioiritized items, I probably should just attach P-high to the ones tagged NLL-sound. Lets see

pnkfelix (Feb 27 2019 at 15:45, on Zulip):

We have " NLL accepts higher-ranked subtype that non-NLL rejects" #57642

pnkfelix (Feb 27 2019 at 15:46, on Zulip):

ah I see, this is another case that affects only #![feature(nll)] not migration mode.

pnkfelix (Feb 27 2019 at 15:46, on Zulip):

Would be good to link those in the corresponding ticket. I'll do that now.

pnkfelix (Feb 27 2019 at 15:50, on Zulip):

as for prioritization ... I guess it inherits the same priority that #57895 has. (But now I'm wondering if it was a mistake for me to mark that P-high, instead of just marking #57804 as P-high to keep focus on that.)

pnkfelix (Feb 27 2019 at 15:56, on Zulip):

Okay. I'm going to attempt to clarify the priorities here by having a separate bug, #58781, for turning off borrowck=migrate mode

pnkfelix (Feb 27 2019 at 16:00, on Zulip):

and I marked that (#58781) as P-medium

pnkfelix (Feb 27 2019 at 16:00, on Zulip):

and I marked #57642 as P-medium and linked it bidirectionally to #58781

pnkfelix (Feb 27 2019 at 16:01, on Zulip):

next: "Borrow checker incorrectly accepts code when calling function with complex lifetime bounds through a fn pointer" #57170

pnkfelix (Feb 27 2019 at 16:01, on Zulip):

matthew's PR #57202 that I just r+'ed will fix this.

pnkfelix (Feb 27 2019 at 16:02, on Zulip):

but in any case I'm marking #57170 as P-high

pnkfelix (Feb 27 2019 at 16:03, on Zulip):

next: "user type annotations are captured post normalization" #54940

pnkfelix (Feb 27 2019 at 16:04, on Zulip):

so this affects migrate mode

pnkfelix (Feb 27 2019 at 16:06, on Zulip):

marking P-high. its blocked on lazy normalization according to niko, who has also said that its an complex and obscure bug.

pnkfelix (Feb 27 2019 at 16:07, on Zulip):

but I figure I'm better off marking it P-high today and then letting niko and/or the traits group demote it

pnkfelix (Feb 27 2019 at 16:09, on Zulip):

last NLL-sound unprioritized bug: "fix "bivariant wf" bug in the NLL subtyping code" #54105

pnkfelix (Feb 27 2019 at 16:10, on Zulip):

we still haven't found a test case that shows this bug in practice.

pnkfelix (Feb 27 2019 at 16:11, on Zulip):

nominating for discussion at NLL meeting tonight. I basically want to see if someone wants to volunteer to try to find a test case

pnkfelix (Feb 27 2019 at 16:12, on Zulip):

Okay, good news: there are no P-high NLL issues currently unassigned.

pnkfelix (Feb 27 2019 at 16:13, on Zulip):

but I'm wondering if we should also talk about #54940. Its blocked on lazy-normalization, what is the plan for that going forward

pnkfelix (Feb 27 2019 at 16:14, on Zulip):

(it didn't show up in my search query for unassigned P-high issues because @nikomatsakis is assigned to it right now.)

pnkfelix (Feb 27 2019 at 16:15, on Zulip):

I'll nominate it to ask that Q

pnkfelix (Feb 27 2019 at 16:16, on Zulip):

and with that, I declare this week's pre-triage done.

Last update: Nov 21 2019 at 13:40UTC