Commit graph

22513 commits

Author SHA1 Message Date
Alexander Regueiro
a8248976fd Moved feature-gate tests to correct dir. 2018-11-30 15:48:16 +00:00
Eduard-Mihai Burtescu
840c3010f5 tests: ignore wasm32 for run-pass/proc-macro/expand-with-a-macro. 2018-11-30 06:15:20 +02:00
Eduard-Mihai Burtescu
dcf736d7ad tests: use alloc instead of libc in unnecessary-extern-crate, to make it work on wasm. 2018-11-30 06:15:20 +02:00
Eduard-Mihai Burtescu
b4e504f5b8 tests: use a #![no_std] target crate in run-make/rustc-macro-dep-files. 2018-11-30 06:15:20 +02:00
Eduard-Mihai Burtescu
f083c32da7 tests: support cross-compilation in run-make/rustc-macro-dep-files. 2018-11-30 06:15:20 +02:00
Eduard-Mihai Burtescu
3369929ddb tests: use force-host and no-prefer-dynamic in all proc_macro tests. 2018-11-30 06:15:20 +02:00
Eduard-Mihai Burtescu
fcca22cb40 tests: move all proc_macro tests from -fulldeps. 2018-11-30 06:15:20 +02:00
Eduard-Mihai Burtescu
d3ab4a74ef tests: remove ignore-stage1 where possible in proc_macro tests. 2018-11-30 06:15:20 +02:00
bors
3e90a12a8a Auto merge of #49878 - dlrobertson:va_list_pt0, r=eddyb
libcore: Add VaList and variadic arg handling intrinsics

## Summary

 - Add intrinsics for `va_start`, `va_end`, `va_copy`, and `va_arg`.
 - Add `core::va_list::VaList` to `libcore`.

Part 1 of (at least) 3 for #44930

Comments and critiques are very much welcomed 😄
2018-11-29 19:28:21 +00:00
Guillaume Gomez
3b64f86beb
Rollup merge of #56330 - estebank:cleanup-span, r=zackmdavis
Clean up span in non-trailing `..` suggestion
2018-11-29 13:10:54 +01:00
Guillaume Gomez
1fe2085441
Rollup merge of #56322 - petrochenkov:edlints, r=eddyb
resolve: Fix false-positives from lint `absolute_paths_not_starting_with_crate`

Fixes https://github.com/rust-lang/rust/issues/56311 (stable-to-beta regression)
2018-11-29 13:10:53 +01:00
Guillaume Gomez
2d3236c68f
Rollup merge of #56257 - mark-i-m:rustc-guide-links, r=nikomatsakis
rustc-guide has moved to rust-lang/

r? @nikomatsakis
2018-11-29 13:10:44 +01:00
Guillaume Gomez
796892e0ef
Rollup merge of #56220 - estebank:suggest-lifetime-move, r=nikomatsakis
Suggest appropriate place for lifetime when declared after type arguments
2018-11-29 13:10:39 +01:00
Guillaume Gomez
aebf07e3eb
Rollup merge of #56114 - varkor:nonexhaustive-backticks, r=nikomatsakis
Enclose type in backticks for "non-exhaustive patterns" error

This makes the error style consistent with the convention in error messages.
2018-11-29 13:10:33 +01:00
bors
5a03532ea9 Auto merge of #56245 - mark-i-m:stabilize_ques_kleene, r=alexcrichton
Stabilize feature `macro_at_most_once_rep`

a.k.a. `?` Kleene operator 🎉

cc #48075

r? @Centril
2018-11-29 06:44:12 +00:00
bors
a49316ddc9 Auto merge of #56329 - eddyb:load-operand-overaligned, r=nikomatsakis
rustc_codegen_llvm: don't overalign loads of pair operands.

Counterpart to #56300, but for loads instead of stores.
2018-11-29 02:56:24 +00:00
bors
5f387a6032 Auto merge of #56300 - nikic:issue-56267, r=eddyb
Fix alignment of stores to scalar pair

The alignment for the second element of a scalar pair is not the same as for the first element, make sure it is calculated correctly. This fixes #56267.

r? @eddyb
2018-11-29 00:06:20 +00:00
Esteban Küber
66a2c39290 Clean up span in non-trailing .. suggestion 2018-11-28 16:05:02 -08:00
Eduard-Mihai Burtescu
51cf4e9e91 rustc_codegen_llvm: don't overalign loads of pair operands. 2018-11-29 00:37:38 +02:00
Vadim Petrochenkov
d77edb6458 resolve: Fix false-positives from lint absolute_paths_not_starting_with_crate 2018-11-28 22:57:25 +03:00
Mark Mansi
5d7717360c fix test 2018-11-27 18:21:10 -06:00
Nikita Popov
d8190afbcb Fix alignment of stores to scalar pair
The alignment for the second element of a scalar pair is not the
same as for the first element. Make sure it is computed correctly
based on the element size.
2018-11-28 00:31:03 +01:00
Mark Mansi
aeede9eb46 fix test 2018-11-27 13:13:11 -06:00
Mark Mansi
59ae93daed remove uses of feature gate 2018-11-27 13:13:11 -06:00
Mark Mansi
e97edad935 update tests 2018-11-27 13:13:11 -06:00
bors
400c2bc5ed Auto merge of #56264 - petrochenkov:typonly, r=nikomatsakis
resolve: Extern prelude is for type namespace only

Fixes https://github.com/rust-lang/rust/issues/56263 (stable-to-beta regression)
2018-11-27 19:04:44 +00:00
bors
aeff91d977 Auto merge of #56251 - scalexm:root-universe, r=nikomatsakis
Put all existential ty vars in the `ROOT` universe

r? @nikomatsakis
2018-11-27 15:54:21 +00:00
bors
10e2c729ea Auto merge of #55402 - estebank:macro-eof-2, r=nikomatsakis
Point at end of macro arm when encountering EOF

Fix #52866.
2018-11-27 12:31:45 +00:00
Vadim Petrochenkov
cd2e98dbd3 resolve: Extern prelude is for type namespace only 2018-11-27 14:35:36 +03:00
Dan Robertson
e9e084f5fa
test: Add basic test for VaList 2018-11-26 22:56:20 +00:00
Vadim Petrochenkov
6f13708299 resolve: Suggest crate:: for resolving ambiguities when appropriate
More precise spans for ambiguities from macros
2018-11-27 00:34:25 +03:00
Vadim Petrochenkov
d1862b4196 resolve: Fallback to extern prelude in 2015 imports used from global 2018 edition 2018-11-27 00:34:24 +03:00
Vadim Petrochenkov
c06e69ee70 resolve: Fallback to uniform paths in 2015 imports used from global 2018 edition 2018-11-27 00:32:34 +03:00
Vadim Petrochenkov
dae4c7b1ff resolve: Implement edition hygiene for imports and absolute paths
Use per-span hygiene in a few other places in resolve
Prefer `rust_2015`/`rust_2018` helpers to comparing editions
2018-11-27 00:32:30 +03:00
Vadim Petrochenkov
fba116fc5f Remove duplicate tests for uniform paths 2018-11-27 00:30:50 +03:00
Mark Mansi
6494f1e60e rustc-guide has moved 2018-11-26 15:03:13 -06:00
scalexm
efb2949b93 Put all existential ty vars in the ROOT universe 2018-11-26 20:37:43 +01:00
Esteban Küber
45dfe43887 Emit one diagnostic for multiple misplaced lifetimes 2018-11-26 08:32:47 -08:00
bors
b51632e3f0 Auto merge of #56070 - oli-obk:const_let, r=eddyb
Allow assignments in const contexts

fixes https://github.com/rust-lang/rust/issues/54098
fixes https://github.com/rust-lang/rust/issues/51251
fixes https://github.com/rust-lang/rust/issues/52613
2018-11-26 08:17:36 +00:00
Eduard-Mihai Burtescu
e281446261 Try to make top-level Cargo.toml work without __CARGO_TEST_ROOT. 2018-11-25 23:13:58 +02:00
Esteban Küber
234d043d18 Move lifetimes before the *first* type argument 2018-11-25 12:51:04 -08:00
Esteban Küber
79ee8f329d Suggest appropriate place for lifetime when declared after type arguments 2018-11-25 12:41:38 -08:00
Pietro Albini
cd17b1d4b6
Rollup merge of #56211 - petrochenkov:fwd, r=petrochenkov
[master] Forward-ports from beta

https://github.com/rust-lang/rust/pull/56206 + one commit from https://github.com/rust-lang/rust/pull/55884 that was accidentally missing in https://github.com/rust-lang/rust/pull/56042 due to an off-by-one mistake in commit ranges

r? @ghost
2018-11-25 17:05:12 +01:00
Pietro Albini
d21d510dde
Rollup merge of #56207 - SimonSapin:int_to_from_bytes, r=nagisa
Stabilize the int_to_from_bytes feature

Fixes #52963

FCP to merge completed: https://github.com/rust-lang/rust/issues/52963#issuecomment-416548327
2018-11-25 17:05:10 +01:00
Pietro Albini
dcae83b6a3
Rollup merge of #56204 - estebank:suggest-variant, r=zackmdavis
Suggest correct enum variant on typo

Fix #37992.
2018-11-25 17:05:09 +01:00
Pietro Albini
989678e525
Rollup merge of #56151 - alexcrichton:move-out-flaky-test, r=nagisa
Move a flaky process test out of libstd

This test ensures that everything in `env::vars()` is inherited but
that's not actually true because other tests may add env vars after we
spawn the process, causing the test to be flaky! This commit moves the
test to a run-pass test where it can execute in isolation.

Along the way this removes a lot of the platform specificity of the
test, using iteslf to print the environment instead of a foreign process.
2018-11-25 17:05:05 +01:00
Pietro Albini
ed6c7b751d
Rollup merge of #56144 - tromey:Bug-55771-btreemap, r=alexcrichton
Fix BTreeSet and BTreeMap gdb pretty-printers

The BTreeSet and BTreeMap gdb pretty-printers did not take the node
structure into account, and consequently only worked for shallow sets.
This fixes the problem by iterating over child nodes when needed.

This patch avoids the current approach of implementing some of the
value manipulations in debugger-indepdendent code.  This was done for
convenience: a type lookup was needed for the first time, and there
currently are no lldb formatters for these types.

Closes #55771
2018-11-25 17:05:04 +01:00
Pietro Albini
6398df1520
Rollup merge of #56101 - frewsxcv:frewsxcv-dyn, r=steveklabnik
Incorporate `dyn` into more comments and docs.

r? @rust-lang/docs
2018-11-25 17:05:03 +01:00
Pietro Albini
b16d8eb3f2
Rollup merge of #56072 - da-x:stabilize-literal-matcher, r=petrochenkov
Stabilize macro_literal_matcher

This followed FCP in #35625.

Closes #35625
2018-11-25 17:05:00 +01:00
Pietro Albini
6c2513c0d3
Rollup merge of #56045 - qnighy:additional-sizedness, r=cramertj
Check arg/ret sizedness at ExprKind::Path

This PR solves three problems:

- #50940: ICE on casting unsized tuple struct constructors
- Unsized tuple struct constructors were callable in presence of `unsized_locals`.
- https://github.com/rust-lang/rust/issues/48055#issuecomment-437178966: we cannot relax `Sized` bounds on stable functions because of fn ptr casting

These are caused by lack of `Sized`ness checks for arguments/retvals at **reference sites of `FnDef` items** (not call sites of the functions). Therefore we can basically add more `Sized` obligations on typeck. However, adding `Sized` obligations arbitrarily breaks type inference; to prevent that I added a new method `require_type_is_sized_deferred` which doesn't interfere usual type inference.
2018-11-25 17:04:58 +01:00