You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit takes an insane amount of time to compile. Before the commit, the crate takes about 15 seconds to compile. After the commit, I stopped after around 15 minutes. EDIT: estimates would be about 2 hours.
I've isolated the problem to this code. These are two methods implemented on tuples. They should expand to roughly something like this:
let&(first,B,C,D,E,F,G,H) = self;let iter = first.buffers_list();let iter = iter.chain(B.buffers_list());let iter = iter.chain(C.buffers_list());let iter = iter.chain(D.buffers_list());let iter = iter.chain(E.buffers_list());let iter = iter.chain(F.buffers_list());let iter = iter.chain(G.buffers_list());let iter = iter.chain(H.buffers_list());Box::new(iter)
If I reduce the maximum size of the tuple here to only 16 elements, the item-bodies checking pass takes about 11 seconds. With 17 elements, it takes about 18 seconds. With 18 elements, it takes about 33 seconds. With 19 elements, about 60 seconds.
This commit takes an insane amount of time to compile. Before the commit, the crate takes about 15 seconds to compile. After the commit, I stopped after around 15 minutes. EDIT: estimates would be about 2 hours.
I've isolated the problem to this code. These are two methods implemented on tuples. They should expand to roughly something like this:
If I reduce the maximum size of the tuple here to only 16 elements, the item-bodies checking pass takes about 11 seconds. With 17 elements, it takes about 18 seconds. With 18 elements, it takes about 33 seconds. With 19 elements, about 60 seconds.
cc @eddyb
The text was updated successfully, but these errors were encountered: