Skip to content

Vec::recycle (experimental API implementation) - #66069

Closed
golddranks wants to merge 7 commits into
rust-lang:masterfrom
golddranks:recycle_vec
Closed

Vec::recycle (experimental API implementation)#66069
golddranks wants to merge 7 commits into
rust-lang:masterfrom
golddranks:recycle_vec

Conversation

@golddranks

Copy link
Copy Markdown
Contributor

Implements the API described here rust-lang/rfcs#2802 behind a feature flag recycle_vec.

@rust-highfive

Copy link
Copy Markdown
Contributor

r? @shepmaster

(rust_highfive has picked a reviewer for you, use r? to override)

@rust-highfiverust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Nov 3, 2019
@jonas-schievinkjonas-schievink added A-collections Area: `std::collections` T-libs-api [DEPRECATED; DO NOT USE] labels Nov 3, 2019
@rust-highfive

Copy link
Copy Markdown
Contributor

The job x86_64-gnu-llvm-6.0 of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-11-03T22:26:09.5123970Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-11-03T22:26:09.5367901Z ##[command]git config gc.auto 0
2019-11-03T22:26:09.5434937Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-11-03T22:26:09.5820730Z ##[command]git config --get-all http.proxy
2019-11-03T22:26:09.5962311Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/66069/merge:refs/remotes/pull/66069/merge
---
2019-11-03T22:32:28.4991500Z Compiling serde_json v1.0.40
2019-11-03T22:32:30.1682336Z Compiling tidy v0.1.0 (/checkout/src/tools/tidy)
2019-11-03T22:32:41.0866804Z Finished release [optimized] target(s) in 1m 24s
2019-11-03T22:32:41.0938739Z tidy check
2019-11-03T22:32:41.2182546Z tidy error: /checkout/src/liballoc/tests/vec.rs:1267: line longer than 100 chars
2019-11-03T22:32:41.2234387Z tidy error: /checkout/src/liballoc/vec.rs:650: line longer than 100 chars
2019-11-03T22:32:41.2234737Z tidy error: /checkout/src/liballoc/vec.rs:683: TODO is deprecated; use FIXME
2019-11-03T22:32:41.2242701Z tidy error: /checkout/src/liballoc/vec.rs: too many lines (3029) (add `// ignore-tidy-filelength` to the file to suppress this error)
2019-11-03T22:32:43.3224762Z Found 485 error codes
2019-11-03T22:32:43.3226018Z Found 0 error codes with no tests
2019-11-03T22:32:43.3226251Z Done!
2019-11-03T22:32:43.3226677Z some tidy checks failed
2019-11-03T22:32:43.3226677Z some tidy checks failed
2019-11-03T22:32:43.3226710Z 2019-11-03T22:32:43.3226738Z 2019-11-03T22:32:43.3227857Z command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/tidy" "/checkout/src" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "--no-vendor"
2019-11-03T22:32:43.3229668Z 2019-11-03T22:32:43.3229729Z 2019-11-03T22:32:43.3257776Z failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test src/tools/tidy
2019-11-03T22:32:43.3257854Z Build completed unsuccessfully in 0:01:27
2019-11-03T22:32:43.3257854Z Build completed unsuccessfully in 0:01:27
2019-11-03T22:32:43.3289829Z == clock drift check ==
2019-11-03T22:32:43.3300593Z local time: Sun Nov 3 22:32:43 UTC 2019
2019-11-03T22:32:43.4783496Z network time: Sun, 03 Nov 2019 22:32:43 GMT
2019-11-03T22:32:43.4787278Z == end clock drift check ==
2019-11-03T22:32:44.8057611Z 2019-11-03T22:32:44.8136499Z ##[error]Bash exited with code '1'.
2019-11-03T22:32:44.8173128Z ##[section]Starting: Checkout
2019-11-03T22:32:44.8174609Z ==============================================================================
2019-11-03T22:32:44.8174679Z Task : Get sources
2019-11-03T22:32:44.8174723Z Description : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@golddranksgolddranks reopened this Nov 3, 2019
@golddranks

Copy link
Copy Markdown
ContributorAuthor

It seems that a formatting check failed. I'm gonna reformat this later.

@rust-highfive

Copy link
Copy Markdown
Contributor

The job x86_64-gnu-llvm-6.0 of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-11-03T22:50:08.1675683Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-11-03T22:50:08.1864026Z ##[command]git config gc.auto 0
2019-11-03T22:50:08.1931436Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-11-03T22:50:08.1979061Z ##[command]git config --get-all http.proxy
2019-11-03T22:50:08.2114523Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/66069/merge:refs/remotes/pull/66069/merge
---
2019-11-03T22:56:13.6979244Z Compiling serde_json v1.0.40
2019-11-03T22:56:15.4146015Z Compiling tidy v0.1.0 (/checkout/src/tools/tidy)
2019-11-03T22:56:26.7114194Z Finished release [optimized] target(s) in 1m 26s
2019-11-03T22:56:26.7193614Z tidy check
2019-11-03T22:56:26.8427301Z tidy error: /checkout/src/liballoc/tests/vec.rs:1267: line longer than 100 chars
2019-11-03T22:56:26.8483747Z tidy error: /checkout/src/liballoc/vec.rs:650: line longer than 100 chars
2019-11-03T22:56:26.8484115Z tidy error: /checkout/src/liballoc/vec.rs:683: TODO is deprecated; use FIXME
2019-11-03T22:56:26.8493216Z tidy error: /checkout/src/liballoc/vec.rs: too many lines (3029) (add `// ignore-tidy-filelength` to the file to suppress this error)
2019-11-03T22:56:29.0878041Z Found 485 error codes
2019-11-03T22:56:29.0878146Z Found 0 error codes with no tests
2019-11-03T22:56:29.0878467Z Done!
2019-11-03T22:56:29.0884481Z 2019-11-03T22:56:29.0884481Z 2019-11-03T22:56:29.0884713Z 2019-11-03T22:56:29.0885663Z command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/tidy" "/checkout/src" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "--no-vendor"
2019-11-03T22:56:29.0886563Z 2019-11-03T22:56:29.0886753Z 2019-11-03T22:56:29.0886915Z failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test src/tools/tidy
2019-11-03T22:56:29.0887067Z Build completed unsuccessfully in 0:01:30
2019-11-03T22:56:29.0887067Z Build completed unsuccessfully in 0:01:30
2019-11-03T22:56:29.0887227Z some tidy checks failed
2019-11-03T22:56:29.0934334Z == clock drift check ==
2019-11-03T22:56:29.0955303Z local time: Sun Nov 3 22:56:29 UTC 2019
2019-11-03T22:56:29.2421794Z network time: Sun, 03 Nov 2019 22:56:29 GMT
2019-11-03T22:56:29.2422823Z == end clock drift check ==
2019-11-03T22:56:30.6137233Z 2019-11-03T22:56:30.6208240Z ##[error]Bash exited with code '1'.
2019-11-03T22:56:30.6233933Z ##[section]Starting: Checkout
2019-11-03T22:56:30.6235402Z ==============================================================================
2019-11-03T22:56:30.6235452Z Task : Get sources
2019-11-03T22:56:30.6235507Z Description : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

Comment threadsrc/liballoc/vec.rs Outdated
Comment threadsrc/liballoc/vec.rs
Comment threadsrc/liballoc/vec.rs Outdated
Comment threadsrc/liballoc/vec.rs Outdated
Comment threadsrc/liballoc/vec.rs Outdated
Comment threadsrc/liballoc/vec.rs Outdated
Comment threadsrc/liballoc/tests/vec.rs
Comment threadsrc/liballoc/vec.rs Outdated
#[unstable(feature = "recycle_vec", reason = "new API", issue = "0")]
pub fn recycle<U>(mut self) -> Vec<U> {
self.truncate(0);
// TODO make these const asserts once it becomes possible

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there an actual plan for making this possible? Even with compile time assertions, you wouldn't actually be able to reference T and U inside e.g. a const item defined in this body.

@golddranksgolddranksNov 4, 2019

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is a question that needs to be resolved. It is mentioned as an unresolved question in the RFC. The problem is that changing to compile-time error is a breaking change, so whatever gets decided, we must commit to before stabilizing.

I assumed that once the const functions support conditionals, creating compile time assertion for this case would be possible, but I had a hidden assumption that if there is a generic const function, I could pass it generic types that are in scope. Is the latter not the case? I wonder if there are explicit plans about supporting or not supporting that, or is it just more about how it currently is?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's not the case and there are no current plans to change that so don't expect it to change within the next 1.5 years at least.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All right, I removed the FIXME. I guess it seems good enough just to panic, although I'd love to have a compile-time guarantee, and I think I'm not alone. I wonder if there is any other avenue of attack that would accomplish this.

Comment threadsrc/liballoc/vec.rs Outdated
@rust-highfive

Copy link
Copy Markdown
Contributor

The job x86_64-gnu-llvm-6.0 of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-11-04T06:00:54.3190569Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-11-04T06:00:54.3372766Z ##[command]git config gc.auto 0
2019-11-04T06:00:54.3444092Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-11-04T06:00:54.3506436Z ##[command]git config --get-all http.proxy
2019-11-04T06:00:55.2576830Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/66069/merge:refs/remotes/pull/66069/merge
---
2019-11-04T06:07:01.4304845Z Compiling serde_json v1.0.40
2019-11-04T06:07:03.1591868Z Compiling tidy v0.1.0 (/checkout/src/tools/tidy)
2019-11-04T06:07:14.6153294Z Finished release [optimized] target(s) in 1m 28s
2019-11-04T06:07:14.6236272Z tidy check
2019-11-04T06:07:14.7492711Z tidy error: /checkout/src/liballoc/vec.rs: too many lines (3029) (add `// ignore-tidy-filelength` to the file to suppress this error)
2019-11-04T06:07:16.9038987Z Found 485 error codes
2019-11-04T06:07:16.9041635Z Found 0 error codes with no tests
2019-11-04T06:07:16.9042194Z Done!
2019-11-04T06:07:16.9042473Z some tidy checks failed
2019-11-04T06:07:16.9042473Z some tidy checks failed
2019-11-04T06:07:16.9042804Z 2019-11-04T06:07:16.9043082Z 2019-11-04T06:07:16.9044266Z command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/tidy" "/checkout/src" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "--no-vendor"
2019-11-04T06:07:16.9045327Z 2019-11-04T06:07:16.9045543Z 2019-11-04T06:07:16.9053066Z failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test src/tools/tidy
2019-11-04T06:07:16.9053176Z Build completed unsuccessfully in 0:01:32
2019-11-04T06:07:16.9053176Z Build completed unsuccessfully in 0:01:32
2019-11-04T06:07:16.9116802Z == clock drift check ==
2019-11-04T06:07:16.9127294Z local time: Mon Nov 4 06:07:16 UTC 2019
2019-11-04T06:07:17.2051161Z network time: Mon, 04 Nov 2019 06:07:17 GMT
2019-11-04T06:07:17.2057231Z == end clock drift check ==
2019-11-04T06:07:18.6086136Z 2019-11-04T06:07:18.6216962Z ##[error]Bash exited with code '1'.
2019-11-04T06:07:18.6245314Z ##[section]Starting: Checkout
2019-11-04T06:07:18.6247904Z ==============================================================================
2019-11-04T06:07:18.6247965Z Task : Get sources
2019-11-04T06:07:18.6248044Z Description : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@golddranks

Copy link
Copy Markdown
ContributorAuthor

I'm getting a CI error like this:
tidy error: /checkout/src/liballoc/vec.rs: too many lines (3029) (add // ignore-tidy-filelength to the file to suppress this error)

I wonder if 3000 is the threshold value and this PR just happened to break it? Even if vec.rs gets refactored and split up, I think it's not this PR we should do that in. Any suggestions? Should I just add // ignore-tidy-filelength to suppress the error?

@Centril

Copy link
Copy Markdown
Contributor

You can add the ignore directive but it would be good if you could follow up with the splitting.

@golddranks

Copy link
Copy Markdown
ContributorAuthor

I'll starting working on one. That's actually a nice, manageable thing to do for us rustc noobs :) Adding the ignore directive for now.

@rust-highfive

Copy link
Copy Markdown
Contributor

The job x86_64-gnu-llvm-6.0 of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-11-04T06:37:07.6170664Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-11-04T06:37:07.6363424Z ##[command]git config gc.auto 0
2019-11-04T06:37:07.6435608Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-11-04T06:37:07.6493342Z ##[command]git config --get-all http.proxy
2019-11-04T06:37:07.6631247Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/66069/merge:refs/remotes/pull/66069/merge
---
2019-11-04T07:39:19.3607540Z .................................................................................................... 1600/9271
2019-11-04T07:39:25.0577259Z .................................................................................................... 1700/9271
2019-11-04T07:39:39.0028434Z ..............................................................i...............i..................... 1800/9271
2019-11-04T07:39:46.5566868Z .................................................................................................... 1900/9271
2019-11-04T07:40:02.4959023Z ....................................................iiiii........................................... 2000/9271
2019-11-04T07:40:14.0012504Z .................................................................................................... 2200/9271
2019-11-04T07:40:16.5859804Z .................................................................................................... 2300/9271
2019-11-04T07:40:19.9907263Z .................................................................................................... 2400/9271
2019-11-04T07:40:43.7998850Z .................................................................................................... 2500/9271
2019-11-04T07:40:43.7998850Z .................................................................................................... 2500/9271
2019-11-04T07:40:46.6523391Z .................................................................................................... 2600/9271
2019-11-04T07:40:55.1046395Z .................................................................................................... 2700/9271
2019-11-04T07:41:03.9994618Z ....................i............................................................................... 2800/9271
2019-11-04T07:41:13.4857552Z .................................................................................................... 2900/9271
2019-11-04T07:41:18.0233052Z ...................i................................................................................ 3000/9271
2019-11-04T07:41:26.7403590Z .................................................................................................... 3100/9271
2019-11-04T07:41:33.1182166Z .................................................................................................... 3200/9271
2019-11-04T07:41:41.8825454Z .ii................................................................................................. 3300/9271
2019-11-04T07:41:59.3667172Z ..............................................................................................i..... 3500/9271
2019-11-04T07:42:06.8423340Z .........................................i.......................................................... 3600/9271
2019-11-04T07:42:14.1353785Z .................................................................................................... 3700/9271
2019-11-04T07:42:20.7612861Z .................................................................................................... 3800/9271
---
2019-11-04T07:43:41.2735856Z ....................................................i...............i............................... 4800/9271
2019-11-04T07:43:50.5751457Z .................................................................................................... 4900/9271
2019-11-04T07:43:59.6259106Z .................................................................................................... 5000/9271
2019-11-04T07:44:05.7663390Z .................................................................................................... 5100/9271
2019-11-04T07:44:16.8111163Z .....................................................ii.ii...........i.............................. 5200/9271
2019-11-04T07:44:26.8006325Z .................................................................................................... 5400/9271
2019-11-04T07:44:37.2760874Z .................................................................................................... 5500/9271
2019-11-04T07:44:44.7033654Z ..........................i......................................................................... 5600/9271
2019-11-04T07:44:51.6968134Z .................................................................................................... 5700/9271
2019-11-04T07:44:51.6968134Z .................................................................................................... 5700/9271
2019-11-04T07:45:03.9115158Z .................................................................................................... 5800/9271
2019-11-04T07:45:16.2744240Z ...........ii...i..ii...........i................................................................... 5900/9271
2019-11-04T07:45:37.1730135Z .................................................................................................... 6100/9271
2019-11-04T07:45:45.0960247Z .................................................................................................... 6200/9271
2019-11-04T07:45:45.0960247Z .................................................................................................... 6200/9271
2019-11-04T07:45:59.7039974Z ..............................i..ii................................................................. 6300/9271
2019-11-04T07:46:20.9284902Z .................................................................................................i.. 6500/9271
2019-11-04T07:46:23.2295916Z .................................................................................................... 6600/9271
2019-11-04T07:46:25.9072174Z ...........................................................................i........................ 6700/9271
2019-11-04T07:46:28.7651885Z .................................................................................................... 6800/9271
---
2019-11-04T07:51:55.8872750Z finished in 5.621
2019-11-04T07:51:55.9056617Z Check compiletest suite=codegen mode=codegen (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T07:51:56.0607905Z 2019-11-04T07:51:56.0609158Z running 158 tests
2019-11-04T07:51:59.1907688Z iiiiii....iii......iii..iiii...i.............................i..i..................i....i........... 100/158
2019-11-04T07:52:01.2629934Z ii.i.i..iiii..............i.........iii.i.........ii......
2019-11-04T07:52:01.2633512Z 2019-11-04T07:52:01.2633805Z finished in 5.357
2019-11-04T07:52:01.2809797Z Check compiletest suite=codegen-units mode=codegen-units (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T07:52:01.4406683Z ---
2019-11-04T07:52:03.5466618Z finished in 2.265
2019-11-04T07:52:03.5690401Z Check compiletest suite=assembly mode=assembly (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T07:52:03.7383796Z 2019-11-04T07:52:03.7383914Z running 9 tests
2019-11-04T07:52:03.7394230Z iiiiiiiii
2019-11-04T07:52:03.7394643Z 2019-11-04T07:52:03.7394688Z finished in 0.169
2019-11-04T07:52:03.7568334Z Check compiletest suite=incremental mode=incremental (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T07:52:03.9411492Z ---
2019-11-04T07:52:25.4346587Z finished in 21.677
2019-11-04T07:52:25.4582658Z Check compiletest suite=debuginfo mode=debuginfo-gdb+lldb (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T07:52:25.6433579Z 2019-11-04T07:52:25.6434253Z running 123 tests
2019-11-04T07:52:50.3032451Z .iiiii...i.....i..i...i..i.i.i..i.ii..i.i.....i..i....ii..........iiii..........i...ii...i.......ii. 100/123
2019-11-04T07:52:54.9454145Z i.i.i......iii.i.....ii
2019-11-04T07:52:54.9455867Z 2019-11-04T07:52:54.9460318Z finished in 29.488
2019-11-04T07:52:54.9470209Z Uplifting stage1 rustc (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T07:52:54.9470973Z Copying stage2 rustc from stage1 (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu / x86_64-unknown-linux-gnu)
---
2019-11-04T08:02:42.0393366Z Compiling alloc v0.0.0 (/checkout/src/liballoc)
2019-11-04T08:02:42.8486242Z error[E0425]: cannot find value `val_size` in this scope
2019-11-04T08:02:42.8495126Z --> src/liballoc/../liballoc/tests/vec.rs:1311:9
2019-11-04T08:02:42.8495758Z |
2019-11-04T08:02:42.8496839Z 1311 | val_size = core::mem::size_of_val(&buf[0]);
2019-11-04T08:02:42.8498822Z 2019-11-04T08:02:42.8543361Z error[E0425]: cannot find value `val_align` in this scope
2019-11-04T08:02:42.8544489Z --> src/liballoc/../liballoc/tests/vec.rs:1312:9
2019-11-04T08:02:42.8544804Z |
2019-11-04T08:02:42.8544804Z |
2019-11-04T08:02:42.8545107Z 1312 | val_align = core::mem::align_of_val(&buf[0]);
2019-11-04T08:02:42.8545489Z 2019-11-04T08:02:42.8595527Z error[E0425]: cannot find value `val_size` in this scope
2019-11-04T08:02:42.8595858Z --> src/liballoc/../liballoc/tests/vec.rs:1317:16
2019-11-04T08:02:42.8596113Z |
2019-11-04T08:02:42.8596113Z |
2019-11-04T08:02:42.8596418Z 1317 | assert_eq!(val_size, core::mem::size_of_val(&buf[0]));
2019-11-04T08:02:42.8597041Z 2019-11-04T08:02:42.8643109Z error[E0425]: cannot find value `val_align` in this scope
2019-11-04T08:02:42.8643431Z --> src/liballoc/../liballoc/tests/vec.rs:1318:16
2019-11-04T08:02:42.8643693Z |
2019-11-04T08:02:42.8643693Z |
2019-11-04T08:02:42.8644021Z 1318 | assert_eq!(val_align, core::mem::align_of_val(&buf[0]));
2019-11-04T08:02:42.8644412Z 2019-11-04T08:02:48.4239568Z error: aborting due to 4 previous errors
2019-11-04T08:02:48.4239665Z 2019-11-04T08:02:48.4246662Z For more information about this error, try `rustc --explain E0425`.
---
2019-11-04T08:02:53.2072635Z local time: Mon Nov 4 08:02:53 UTC 2019
2019-11-04T08:02:53.7789562Z network time: Mon, 04 Nov 2019 08:02:53 GMT
2019-11-04T08:02:53.7790387Z == end clock drift check ==
2019-11-04T08:02:55.3401987Z 2019-11-04T08:02:55.3540539Z ##[error]Bash exited with code '1'.
2019-11-04T08:02:55.3579691Z ##[section]Starting: Checkout
2019-11-04T08:02:55.3581822Z ==============================================================================
2019-11-04T08:02:55.3581897Z Task : Get sources
2019-11-04T08:02:55.3581949Z Description : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@rust-highfive

Copy link
Copy Markdown
Contributor

The job x86_64-gnu-llvm-6.0 of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-11-04T08:25:50.0993732Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-11-04T08:25:50.1176880Z ##[command]git config gc.auto 0
2019-11-04T08:25:50.1266253Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-11-04T08:25:50.1314080Z ##[command]git config --get-all http.proxy
2019-11-04T08:25:50.1486974Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/66069/merge:refs/remotes/pull/66069/merge
---
2019-11-04T09:27:47.1860965Z .................................................................................................... 1600/9271
2019-11-04T09:27:52.9505485Z .................................................................................................... 1700/9271
2019-11-04T09:28:05.8863303Z ..............................................................i...............i..................... 1800/9271
2019-11-04T09:28:13.5117179Z .................................................................................................... 1900/9271
2019-11-04T09:28:29.3337382Z ....................................................iiiii........................................... 2000/9271
2019-11-04T09:28:40.3012973Z .................................................................................................... 2200/9271
2019-11-04T09:28:42.9006047Z .................................................................................................... 2300/9271
2019-11-04T09:28:46.4632143Z .................................................................................................... 2400/9271
2019-11-04T09:29:10.3394065Z .................................................................................................... 2500/9271
2019-11-04T09:29:10.3394065Z .................................................................................................... 2500/9271
2019-11-04T09:29:13.1817290Z .................................................................................................... 2600/9271
2019-11-04T09:29:21.2358782Z .................................................................................................... 2700/9271
2019-11-04T09:29:30.2980740Z ....................i............................................................................... 2800/9271
2019-11-04T09:29:39.3977041Z .................................................................................................... 2900/9271
2019-11-04T09:29:44.0564341Z ...................i................................................................................ 3000/9271
2019-11-04T09:29:53.0202376Z .................................................................................................... 3100/9271
2019-11-04T09:29:58.8425382Z .................................................................................................... 3200/9271
2019-11-04T09:30:07.7795200Z .ii................................................................................................. 3300/9271
2019-11-04T09:30:24.9533268Z ..............................................................................................i..... 3500/9271
2019-11-04T09:30:32.6021913Z .........................................i.......................................................... 3600/9271
2019-11-04T09:30:39.3453252Z .................................................................................................... 3700/9271
2019-11-04T09:30:45.9978472Z .................................................................................................... 3800/9271
---
2019-11-04T09:32:05.1593936Z ....................................................i...............i............................... 4800/9271
2019-11-04T09:32:14.2890415Z .................................................................................................... 4900/9271
2019-11-04T09:32:23.2907988Z .................................................................................................... 5000/9271
2019-11-04T09:32:29.4587756Z .................................................................................................... 5100/9271
2019-11-04T09:32:40.2663696Z .....................................................ii.ii...........i.............................. 5200/9271
2019-11-04T09:32:50.4435372Z .................................................................................................... 5400/9271
2019-11-04T09:33:00.9459219Z .................................................................................................... 5500/9271
2019-11-04T09:33:08.5450286Z ..........................i......................................................................... 5600/9271
2019-11-04T09:33:15.2453286Z .................................................................................................... 5700/9271
2019-11-04T09:33:15.2453286Z .................................................................................................... 5700/9271
2019-11-04T09:33:27.3920313Z .................................................................................................... 5800/9271
2019-11-04T09:33:39.3626357Z ...........ii...i..ii...........i................................................................... 5900/9271
2019-11-04T09:34:00.0961386Z .................................................................................................... 6100/9271
2019-11-04T09:34:08.8568276Z .................................................................................................... 6200/9271
2019-11-04T09:34:08.8568276Z .................................................................................................... 6200/9271
2019-11-04T09:34:23.6755632Z ..............................i..ii................................................................. 6300/9271
2019-11-04T09:34:44.6069444Z .................................................................................................i.. 6500/9271
2019-11-04T09:34:46.8959653Z .................................................................................................... 6600/9271
2019-11-04T09:34:49.2671028Z ...........................................................................i........................ 6700/9271
2019-11-04T09:34:52.0390884Z .................................................................................................... 6800/9271
---
2019-11-04T09:40:18.7015501Z finished in 5.734
2019-11-04T09:40:18.7211812Z Check compiletest suite=codegen mode=codegen (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T09:40:18.8868025Z 2019-11-04T09:40:18.8874800Z running 158 tests
2019-11-04T09:40:22.5447160Z iiiiii....iii......iii..iiii...i.............................i..i..................i....i........... 100/158
2019-11-04T09:40:24.1333560Z ii.i.i..iiii..............i.........iii.i.........ii......
2019-11-04T09:40:24.1334113Z 2019-11-04T09:40:24.1334919Z finished in 5.412
2019-11-04T09:40:24.1522491Z Check compiletest suite=codegen-units mode=codegen-units (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T09:40:24.3154842Z ---
2019-11-04T09:40:26.3573059Z finished in 2.204
2019-11-04T09:40:26.3753586Z Check compiletest suite=assembly mode=assembly (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T09:40:26.5421472Z 2019-11-04T09:40:26.5422167Z running 9 tests
2019-11-04T09:40:26.5426371Z iiiiiiiii
2019-11-04T09:40:26.5426764Z 2019-11-04T09:40:26.5428563Z finished in 0.167
2019-11-04T09:40:26.5604178Z Check compiletest suite=incremental mode=incremental (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T09:40:26.7309221Z ---
2019-11-04T09:40:46.8592750Z finished in 20.298
2019-11-04T09:40:46.8796834Z Check compiletest suite=debuginfo mode=debuginfo-gdb+lldb (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T09:40:47.0481773Z 2019-11-04T09:40:47.0482524Z running 123 tests
2019-11-04T09:41:12.1259754Z .iiiii...i.....i..i...i..i.i.i..i.ii..i.i.....i..i....ii..........iiii..........i...ii...i.......ii. 100/123
2019-11-04T09:41:16.9970935Z i.i.i......iii.i.....ii
2019-11-04T09:41:16.9974541Z 2019-11-04T09:41:16.9974715Z finished in 30.117
2019-11-04T09:41:16.9983146Z Uplifting stage1 rustc (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-04T09:41:16.9984474Z Copying stage2 rustc from stage1 (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu / x86_64-unknown-linux-gnu)
---
2019-11-04T09:51:00.7871562Z Compiling alloc v0.0.0 (/checkout/src/liballoc)
2019-11-04T09:51:09.9645915Z error[E0382]: borrow of moved value: `buf`
2019-11-04T09:51:09.9646333Z --> src/liballoc/../liballoc/tests/vec.rs:1284:44
2019-11-04T09:51:09.9646602Z |
2019-11-04T09:51:09.9646891Z 1276 | let mut buf = Vec::with_capacity(100);
2019-11-04T09:51:09.9647303Z | ------- move occurs because `buf` has type `std::vec::Vec<&str>`, which does not implement the `Copy` trait
2019-11-04T09:51:09.9647938Z 1278 | let mut buf2 = buf;
2019-11-04T09:51:09.9648883Z | --- value moved here
2019-11-04T09:51:09.9649120Z ...
2019-11-04T09:51:09.9649120Z ...
2019-11-04T09:51:09.9649477Z 1284 | val_size = core::mem::size_of_val(&buf[0]);
2019-11-04T09:51:09.9649858Z | ^^^ value borrowed here after move
2019-11-04T09:51:09.9714960Z error[E0382]: borrow of moved value: `buf`
2019-11-04T09:51:09.9715564Z --> src/liballoc/../liballoc/tests/vec.rs:1315:44
2019-11-04T09:51:09.9715786Z |
2019-11-04T09:51:09.9716191Z 1302 | let mut buf = Vec::with_capacity(100);
2019-11-04T09:51:09.9716191Z 1302 | let mut buf = Vec::with_capacity(100);
2019-11-04T09:51:09.9716609Z | ------- move occurs because `buf` has type `std::vec::Vec<&str>`, which does not implement the `Copy` trait
2019-11-04T09:51:09.9716888Z 1303 | {
2019-11-04T09:51:09.9717196Z 1304 | let mut buf2 = buf.recycle();
2019-11-04T09:51:09.9717523Z | --- value moved here
2019-11-04T09:51:09.9717749Z ...
2019-11-04T09:51:09.9718063Z 1315 | val_size = core::mem::size_of_val(&buf[0]);
2019-11-04T09:51:09.9718779Z | ^^^ value borrowed here after move
2019-11-04T09:51:09.9849513Z error: aborting due to 2 previous errors
2019-11-04T09:51:09.9849576Z 2019-11-04T09:51:09.9855280Z For more information about this error, try `rustc --explain E0382`.
2019-11-04T09:51:10.1059125Z error: could not compile `alloc`.
---
2019-11-04T09:51:13.2826163Z local time: Mon Nov 4 09:51:13 UTC 2019
2019-11-04T09:51:13.5609722Z network time: Mon, 04 Nov 2019 09:51:13 GMT
2019-11-04T09:51:13.5613227Z == end clock drift check ==
2019-11-04T09:51:14.7313035Z 2019-11-04T09:51:14.7456237Z ##[error]Bash exited with code '1'.
2019-11-04T09:51:14.7492476Z ##[section]Starting: Checkout
2019-11-04T09:51:14.7494354Z ==============================================================================
2019-11-04T09:51:14.7494414Z Task : Get sources
2019-11-04T09:51:14.7494482Z Description : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@JohnCSimon

Copy link
Copy Markdown

Ping from triage:
@shepmaster Can you please review this PR?
CC: @golddranks@Centril

Thanks!

@golddranks

golddranks commented Nov 9, 2019

Copy link
Copy Markdown
ContributorAuthor

I am going to update the unresolved questions of this RFC. I’ll have time to do that on Monday or Tuesday next week. Edit: oops, responded without checking which thread this was. Never mind.

@shepmaster

Copy link
Copy Markdown
Member

Is this worth reviewing while the RFC is still being discussed?

@Dylan-DPC-zzDylan-DPC-zz added S-blocked Status: Blocked on something else such as an RFC or other implementation work. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Nov 15, 2019
@Dylan-DPC-zz

Copy link
Copy Markdown

Marking this as blocked because it is blocked on RFC

Comment threadsrc/liballoc/vec.rs
/// # }
/// ```
///
/// # Note about stabilization

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be removed now?

@bors

bors commented Jan 6, 2020

Copy link
Copy Markdown
Collaborator

☔ The latest upstream changes (presumably #67917) made this pull request unmergeable. Please resolve the merge conflicts.

@bors

bors commented Jan 12, 2020

Copy link
Copy Markdown
Collaborator

☔ The latest upstream changes (presumably #68142) made this pull request unmergeable. Please resolve the merge conflicts.

@Dylan-DPC-zz

Copy link
Copy Markdown

Closing this as this is blocked on the RFC and the RFC will take a while

@Dylan-DPC-zzDylan-DPC-zz added S-blocked-closed and removed S-blocked Status: Blocked on something else such as an RFC or other implementation work. labels Apr 3, 2020
@jyn514jyn514 added S-blocked Status: Blocked on something else such as an RFC or other implementation work. and removed S-blocked-closed labels Mar 10, 2021
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-collectionsArea: `std::collections`S-blockedStatus: Blocked on something else such as an RFC or other implementation work.T-libs-api[DEPRECATED; DO NOT USE]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants

@golddranks@rust-highfive@Centril@JohnCSimon@shepmaster@Dylan-DPC-zz@bors@jonas-schievink@jyn514