Commit Graph

51556 Commits

Author SHA1 Message Date
bors
c7bdfd4442 Auto merge of #32341 - frewsxcv:compiletest-enum, r=nikomatsakis
Use enum for message kind in compiletest harness.

None
2016-03-22 08:02:13 -07:00
bors
2ae05d37da Auto merge of #32264 - GuillaumeGomez:lang_item, r=nikomatsakis
Lang item

Fixes #32033
2016-03-22 04:06:59 -07:00
bors
8fc0554e4d Auto merge of #32388 - semarie:snapshot-openbsd, r=alexcrichton
register openbsd snapshot

Here openbsd version for latest snapshot.

The archive is at http://semarie.online.fr/rust/rust-stage0-2016-03-18-235d774-openbsd-x86_64-c5b6feda38138a12cd5c05574b585dadebbb5e87.tar.bz2

These segmentation fault starts to be annoying. @dhuseby do you think it would be possible to have a shell access to openbsd buildbot in order to try to investigating a bit the reason of them ?

r? @alexcrichton
Ref #32345
2016-03-22 02:05:16 -07:00
bors
6cc502c986 Auto merge of #32253 - durka:derive-31886, r=alexcrichton
derive: assume enum repr defaults to isize

derive: assume enum repr defaults to isize

Fixes #31886.

Spawned from #32139.

r? @alexcrichton
2016-03-21 21:07:28 -07:00
bors
4621dd2171 Auto merge of #32402 - steveklabnik:rollup, r=steveklabnik
Rollup of 6 pull requests

- Successful merges: #32322, #32339, #32340, #32373, #32376, #32397
- Failed merges:
2016-03-21 18:36:13 -07:00
Corey Farwell
73f4321892 Refactor 'kind' extraction to use str::split_whitespace. 2016-03-21 21:16:07 -04:00
bors
21922e1f48 Auto merge of #32062 - Marwes:unification_table_for_eq_relations, r=nikomatsakis
Improve time complexity of equality relations

This PR adds a `UnificationTable` to the `TypeVariableTable` type which is used store information about variable equality instead of just storing them in a vector for later processing. By using a `UnificationTable` equality relations can be resolved in O(n) (for all realistic values of n) rather than O(n!) which can give massive speedups in certain cases (see combine as an example).

Link to combine: https://github.com/Marwes/combine
2016-03-21 16:00:08 -07:00
Markus Westerlind
e00cdd7345 Improve time complexity of equality relations
This PR adds a `UnificationTable` to the `TypeVariableTable` type which
is used store information about variable equality instead of just
storing them in a vector for later processing. By using a
`UnificationTable` equality relations can be resolved in O(n) (for all
realistic values of n) rather than O(n!) which can give massive
speedups in certain cases (see combine as an example).

Link to combine: https://github.com/Marwes/combine
2016-03-21 22:40:30 +01:00
bors
0168dc7c59 Auto merge of #32393 - dotdash:32389, r=eddyb
Fix tupling of fn args for rust-call ABI functions

Fixes #32389
2016-03-21 11:03:17 -07:00
Steve Klabnik
6a3c7d5630 Rollup merge of #32397 - tclfs:patch-7, r=steveklabnik
docs: Make some changes in texts

In my understanding, the description is somehow inappropriate.
2016-03-21 11:46:53 -04:00
Steve Klabnik
29b09087c8 Rollup merge of #32376 - cyplo:cyplo_fix_E0368_documentation, r=steveklabnik
Documentation fix for E0368

Made the 'good' example compile.

I got to the [E0368 error page](https://doc.rust-lang.org/error-index.html#E0368) by following the link in the output of the
compiler. My understanding is that the first example is 'bad' and the
second one is 'good'. Following that logic, I pasted the second example
into the file and to my surprise it did not compile. This commit fixes
the example to make it paste-able.

On the other hand the docstring contained `compile_fail` flag, which might indicate that this was intentional.
I am also assuming here that the `Rust Compiler Error Index` page is generated from the file I changed.

Please let me know what do you think. Thanks a lot !
2016-03-21 11:46:53 -04:00
Steve Klabnik
078b288ebd Rollup merge of #32373 - tclfs:patch-5, r=steveklabnik
docs: Correct an  improper description

In the example, we made a immutable borrow to `println!`, not a mutable one.
2016-03-21 11:46:53 -04:00
Steve Klabnik
3c3b9ad76a Rollup merge of #32340 - Digipom:master, r=steveklabnik
Update of the book; Error handling, section on custom error types: we…

… should also show the changes to the `cause` method.

When I started creating my own error type, I found that we also have to update the cause method, otherwise we have a missing match branch.

It would also be nice to elaborate on the relationship and difference between the description() and fmt() method, but that should be done by someone with more experience with them. :)
2016-03-21 11:46:52 -04:00
Steve Klabnik
0694d63674 Rollup merge of #32339 - tclfs:patch-4, r=apasel422
docs: make some tiny modification about spelling

I think it would be better after modification.
2016-03-21 11:46:52 -04:00
Steve Klabnik
4ed70c2bc8 Rollup merge of #32322 - GuillaumeGomez:cmp_doc, r=steveklabnik
Add doc examples

Fixes #29347

r? @steveklabnik
2016-03-21 11:46:52 -04:00
bors
0215681744 Auto merge of #32378 - petrochenkov:patch-1, r=alexcrichton
Correct Windows build instructions in README.md

http://mingw-w64.org/doku.php/download/mingw-builds now provides GCC 5.3 as a default version, but avoiding 5.x is exactly the reason why Mingw-builds are recommended instead of MSYS2's own mingw toolchain. One of the 4.9.x versions has to be manually chosen during installation.

r? @alexcrichton
2016-03-21 06:35:17 -07:00
Tang Chenglong
a5d9057ca7 docs: Make some changes in texts
In my understanding, the description is somehow inappropriate.
2016-03-21 21:00:04 +08:00
Björn Steinbrink
4fd318b9e9 Fix tupling of fn args for rust-call ABI functions
Fixes #32389
2016-03-21 12:22:29 +01:00
bors
690f160f8f Auto merge of #32369 - frewsxcv:librustc-driver-lib, r=alexcrichton
Minor cleanup for 'src/librustc_driver/lib.rs'

Reading through this file my first time. Cleaned up some stuff on the way.
2016-03-21 03:27:53 -07:00
bors
7ec8f5c369 Auto merge of #32054 - seanmonstar:impl-debug-core, r=alexcrichton
libcore: add Debug implementations to most missing types

Also adds `#![deny(missing_debug_implementations)]` to the core crate.

cc #31869
2016-03-21 00:07:33 -07:00
Sébastien Marie
6e4bc47890 register openbsd snapshot 2016-03-21 06:04:57 +01:00
bors
6c4b1f18f3 Auto merge of #32302 - sfackler:unix-socket, r=alexcrichton
Add unix socket support to the standard library

r? @alexcrichton
2016-03-20 20:13:49 -07:00
Steven Fackler
c0d989ed6b Add unix socket support to the standard library 2016-03-20 18:57:58 -07:00
bors
7f5c568e0a Auto merge of #32344 - aturon:issue-32324, r=eddyb
Fix mis-uses of projection mode

A couple of places where we construct a fresh inference context were
incorrectly assuming that we were past coherence checking. This commit
corrects them to use `Topmost` rather than `AnyFinal` as the projection mode.

Fixes #32324

r? @nikomatsakis
2016-03-20 17:48:09 -07:00
bors
399b52217b Auto merge of #32345 - eddyb:snap-to-orbit, r=alexcrichton
Update snapshots to 2016-03-18 (235d774).

The new snapshots notably include @nikomatsakis' #32164 fix for the regionck error spew.
Also, `./configure --enable-orbit` *and/or* `make RUSTFLAGS="-Z orbit"` should work now (#32080).
2016-03-20 14:46:22 -07:00
Eduard Burtescu
ec84ab0e0f Update snapshots to 2016-03-18 (235d774). 2016-03-20 22:37:35 +02:00
Aaron Turon
09263a6137 Fix mis-uses of projection mode
A couple of places where we construct a fresh inference context were
incorrectly assuming that we were past coherence checking. This commit
corrects them to use `Topmost` rather than `AnyFinal` as the projection mode.

Fixes #32324
2016-03-20 13:37:28 -07:00
Vadim Petrochenkov
90474c7930 Correct Windows build instructions in README.md
http://mingw-w64.org/doku.php/download/mingw-builds now provides GCC 5.x as a default version, but avoiding 5.x is exactly the reason why Mingw-builds is recommended instead of MSYS2's own mingw toolchain. One of the 4.9.x versions has to manually chosen during installation.
2016-03-20 23:36:48 +03:00
bors
2af3dd73db Auto merge of #32010 - devonhollowood:non-c-like-enum-repr, r=Aatch
Add tests for #26114

First step in fixing #26114
2016-03-20 12:49:46 -07:00
Cyryl Płotnicki-Chudyk
903bcb84a1 Documentation fix for E0368
Made the 'good' example compile.

I got to the E0368 error page by following the link in the output of the
compiler. My understanding is that the first example is 'bad' and the
second one is 'good'. Following that logic, I pasted the second example
into the file and to my surprise it did not compile. This commit fixes
the example to make it paste-able.
2016-03-20 19:27:00 +01:00
bors
978bc070a6 Auto merge of #32375 - phil-opp:patch-1, r=japaric
docs: The `data-layout` field is no longer required in custom targets

The `data-layout` field is no longer required. It was made optional in 958d563825.

The `os` field is always required.

Related to #31367
2016-03-20 10:30:38 -07:00
Sean McArthur
e0945937c4 libcore: add Debug implementations to most missing types 2016-03-20 10:04:55 -07:00
Philipp Oppermann
953260208a The data-layout field is no longer required, but the os field is
The `data-layout` field  was made optional in 958d563825. The `os` field is always required.
2016-03-20 17:18:39 +01:00
Corey Farwell
4d52b0f550 Utilize if..let over single match branch. 2016-03-20 11:01:23 -04:00
Corey Farwell
77eb78a8c5 Remove double-negative conditionals. 2016-03-20 11:01:23 -04:00
Tang Chenglong
06d8b21372 docs: Correct an improper description
In the example, we made a immutable borrow to `println!`, not a mutable one.
2016-03-20 21:24:46 +08:00
bors
173676efdc Auto merge of #32367 - tiehuis:tiehuis-E0412-help, r=nagisa
Alter E0412 help message wording

The initial wording does not make sense due to an extra 'to'.

There are two potential candidates we can change this to:
 - 'you can import it into scope'
 - 'to import it into scope'

In keeping the changes minimal, we choose the first, as this is more in line with the grammar of the extended candidates help message.
2016-03-20 04:18:13 -07:00
bors
015d3b7092 Auto merge of #32361 - japaric:no-llvm-assertions-on-arm, r=alexcrichton
disable llvm assertions on ARM compilers

workaround for #32360

r? @alexcrichton
2016-03-19 23:58:20 -07:00
tiehuis
63b66bfbcd Update tests which reference E0421 2016-03-20 19:18:32 +13:00
bors
b6fcab5c7c Auto merge of #32358 - Manishearth:pr-32053, r=Manishearth
Add note if method is called on a function object

rebase of #32053
2016-03-19 21:15:23 -07:00
Corey Farwell
4238d0b639 Replace unneeded owned Vec usage with slice. 2016-03-20 00:04:59 -04:00
tiehuis
1138866b1f Alter E0412 help message wording
The initial wording does not make sense due to an extra 'to'.

There are two potential candidates we can change this to:
 - 'you can import it into scope'
 - 'to import it into scope'

In keeping the changes minimal, we choose the first, as this is more in line with the grammar of the extended candidates help message.
2016-03-20 16:02:31 +13:00
bors
78e8a00514 Auto merge of #32306 - nikomatsakis:issue-32278, r=eddyb
create fewer region variables in coercions

Fixes #32278.

r? @eddyb
2016-03-19 18:39:50 -07:00
bors
02310fd313 Auto merge of #32362 - bluss:float-fast-math, r=eddyb
Fix floating point fast-math intrinsics

The implementation did not handle the case where both operands were constants, which caused an llvm assertion:

```
rustc: //buildslave//rust-buildbot//slave//nightly-dist-rustc-musl-linux//build//src//llvm//include/llvm/Support/Casting.h:237:
typename llvm::cast_retty<X, Y*>::ret_type llvm::cast(Y*) [with X = llvm::Instruction; Y = llvm::Value; typename llvm::cast_retty<X, Y*>::ret_type = llvm::Instruction*]:
Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed.
```
2016-03-19 15:41:42 -07:00
Ulrik Sverdrup
ba89b255e8 Update float_math test to not use constants 2016-03-19 22:35:28 +01:00
Ulrik Sverdrup
e22d6d569f Fix LLVMRustSetHasUnsafeAlgebra to only have effect on instructions 2016-03-19 22:35:28 +01:00
Jorge Aparicio
afbbb74fec disable llvm assertions on ARM compilers
workaround for #32360
2016-03-19 15:00:42 -05:00
bors
8eeb5062d1 Auto merge of #32244 - Amanieu:compare_exchange_result, r=alexcrichton
Change compare_exchange to return a Result<T, T>

As per the discussion in #31767

I also changed the feature name from `extended_compare_and_swap` to `compare_exchange`.

r? @alexcrichton
2016-03-19 12:25:34 -07:00
bors
151be09333 Auto merge of #32314 - alexcrichton:ascii-fun, r=aturon
std: Revert addition of `into_ascii_*` methods

The addition of these methods in #31335 required adding impls of the trait for
the `String` and `Vec<T>` types. This unfortunately caused a regression (#32074)
in type inference for using these methods which the libs team has decided to not
push forward with. These methods were stabilized in #32020 which was intended to
get backported to beta, but the backport hasn't happened just yet. This commit
reverts both the addition and stabilization of these methods.

One proposed method of handling this, in #32076, was to move the methods to an
extra trait to avoid conflicts with type inference. After some discussion,
however, the libs team concluded that we probably want to reevaluate what we're
doing here, so discussion will continue on the tracking issue, #27809.

Closes #32074
2016-03-19 09:39:26 -07:00
Daniel J Rollins
88ad22998b Add Help and Suggestion to issue-29124 tests 2016-03-19 22:06:45 +05:30