Commit Graph

49731 Commits

Author SHA1 Message Date
Greg Chapple 6fd728db6d Updated to reflect comments from review
- Tweaked the build system intro paragraph
- Added some more configure options & explanations
- Added additional make target
2016-01-26 14:29:26 +00:00
Greg Chapple dc6ed63655 Added info on the build system to contributing guide
I recently wrote a blog post on contributing to the Rust compiler which
gained some interest. It was mentioned in a comment on Reddit that it
would be useful to integrate some of the information from that post to
the official contributing guide.

This is the start of my efforts to integrate what I wrote with the
official guide.

This commit adds information on the build system. It is not a complete
guide on the build system, but it should be enough to provide a good
starting place for those wishing to contribute.
2016-01-25 14:25:32 +00:00
bors c22cb5359f Auto merge of #31176 - frewsxcv:incorrect-pass-kind, r=dotdash
Register LLVM passes with the correct LLVM pass manager.

LLVM was upgraded to a new version in this commit:

f9d4149c29

which was part of this pull request:

https://github.com/rust-lang/rust/issues/26025

Consider the following two lines from that commit:

f9d4149c29 (diff-a3b24dbe2ea7c1981f9ac79f9745f40aL462)

f9d4149c29 (diff-a3b24dbe2ea7c1981f9ac79f9745f40aL469)

The purpose of these lines is to register LLVM passes. Prior to the that
commit, the passes being handled were assumed to be ModulePasses (a
specific type of LLVM pass) since they were being added to a ModulePass
manager. After that commit, both lines were refactored (presumably in an
attempt to DRY out the code), but the ModulePasses were changed to be
registered to a FunctionPass manager. This change resulted in
ModulePasses being run, but a Function object was being passed as a
parameter to the pass instead of a Module, which resulted in
segmentation faults.

In this commit, I changed relevant sections of the code to check the
type of the passes being added and register them to the appropriate pass
manager.

Closes https://github.com/rust-lang/rust/issues/31067
2016-01-25 09:37:11 +00:00
Corey Farwell d9426210b1 Register LLVM passes with the correct LLVM pass manager.
LLVM was upgraded to a new version in this commit:

f9d4149c29

which was part of this pull request:

https://github.com/rust-lang/rust/issues/26025

Consider the following two lines from that commit:

f9d4149c29 (diff-a3b24dbe2ea7c1981f9ac79f9745f40aL462)

f9d4149c29 (diff-a3b24dbe2ea7c1981f9ac79f9745f40aL469)

The purpose of these lines is to register LLVM passes. Prior to the that
commit, the passes being handled were assumed to be ModulePasses (a
specific type of LLVM pass) since they were being added to a ModulePass
manager. After that commit, both lines were refactored (presumably in an
attempt to DRY out the code), but the ModulePasses were changed to be
registered to a FunctionPass manager. This change resulted in
ModulePasses being run, but a Function object was being passed as a
parameter to the pass instead of a Module, which resulted in
segmentation faults.

In this commit, I changed relevant sections of the code to check the
type of the passes being added and register them to the appropriate pass
manager.

Closes https://github.com/rust-lang/rust/issues/31067
2016-01-25 00:15:39 -05:00
bors 6866f1361d Auto merge of #31159 - dirk:dirk/clarify-cargo-lock, r=steveklabnik
Also remove a "finally" in the section about building for release to make it feel a bit friendlier.
2016-01-25 01:16:45 +00:00
bors ba356ffbc4 Auto merge of #31166 - geofft:process-comments, r=alexcrichton
The implementation changed in 33a2191d, but the comments did not change to match.

r? @alexcrichton
2016-01-24 23:27:10 +00:00
bors 4043c0247e Auto merge of #31093 - tshepang:misc-doc-improvements, r=steveklabnik 2016-01-24 20:13:14 +00:00
bors 289020b21c Auto merge of #31162 - mopp:fix_configure_for_new_clang, r=alexcrichton
Version of Clang in repository is 3.9

So, error is caused by
```
./configure --enable-dist-host-only --enable-clang
```
Then, I got
```
configure: error: bad CLANG version: 3.9.0 (http://llvm.org/git/clang.git 3d5d4c39659f11dfbe8e11c857cadf5c449b559b) (http://llvm.org/git/llvm.git, need >=3.0svn
```

I fixed this issue by appending 3.9* in the if sentence.
Thanks.
2016-01-24 18:09:51 +00:00
Geoffrey Thomas 73854b1619 sys/unix/process.rs: Update comments in make_argv and make_envp
The implementation changed in 33a2191d, but the comments did not change
to match.
2016-01-24 11:18:02 -05:00
bors 5a81d9aa6d Auto merge of #30932 - arielb1:raw-const-errors, r=nagisa
Fixes #30705

r? @nagisa
2016-01-24 15:16:20 +00:00
Ariel Ben-Yehuda 47593dade7 Improve the error explanations for check_const
Fixes #30705
2016-01-24 17:16:04 +02:00
mopp c0984e42bd fix condition for clang 2016-01-24 19:36:02 +09:00
Tshepang Lekhonkhobe 012d68a92e doc: miscellaneous OpenOptions:append improvements 2016-01-24 07:44:55 +02:00
Dirk Gadsden a469cef1ab Clarify when `Cargo.lock` is created by `cargo build` in the book
Also remove a "finally" in the section about building for release
to make it feel a bit friendlier.
2016-01-23 23:39:38 -05:00
bors 0486e12ad0 Auto merge of #31148 - steveklabnik:rollup, r=steveklabnik
- Successful merges: #30997, #31019, #31031, #31035, #31045, #31050, #31054, #31055, #31061, #31088, #31090, #31111, #31113, #31128, #31130, #31136, #31145, #31146
- Failed merges: #30932
2016-01-23 16:21:07 +00:00
Steve Klabnik feb2673654 Rollup merge of #31146 - angelsl:patch-1, r=steveklabnik 2016-01-23 09:38:44 -05:00
Steve Klabnik 4d99bad158 Rollup merge of #31145 - D101101:patch-1, r=steveklabnik
r? @steveklabnik
2016-01-23 09:38:44 -05:00
Steve Klabnik b0b1df8425 Rollup merge of #31136 - mbrubeck:btree-doc, r=steveklabnik
Also change the examples to make this more obvious. Fixes #31129.
2016-01-23 09:38:44 -05:00
Steve Klabnik 9e5c8aa23f Rollup merge of #31130 - marcbowes:master, r=nrc
E0210 explains about orphan rules and suggests using a local type as a workaround. It wasn't obvious to me that I couldn't use a type alias, so I added a note.
2016-01-23 09:38:44 -05:00
Steve Klabnik fc8ef6cae7 Rollup merge of #31128 - kamalmarhubi:book-trait-impl-clarify, r=steveklabnik 2016-01-23 09:38:44 -05:00
Steve Klabnik c9c754990e Rollup merge of #31113 - steveklabnik:master, r=alexcrichton
r? @alexcrichton
2016-01-23 09:38:43 -05:00
Steve Klabnik 9bc29a9908 Rollup merge of #31111 - apasel422:issue-31103, r=steveklabnik
Closes #31103

r? @steveklabnik
2016-01-23 09:38:43 -05:00
Steve Klabnik 4fcefee654 Rollup merge of #31090 - tshepang:improve-sentence, r=brson 2016-01-23 09:38:43 -05:00
Steve Klabnik 9ed27a402d Rollup merge of #31088 - tshepang:grammar, r=brson 2016-01-23 09:38:43 -05:00
Steve Klabnik b4311b70e1 Rollup merge of #31061 - brson:bib, r=steveklabnik 2016-01-23 09:38:42 -05:00
Steve Klabnik b1e5af4872 Rollup merge of #31055 - steveklabnik:alt-tags, r=alexcrichton 2016-01-23 09:38:42 -05:00
Steve Klabnik 2581aace9c Rollup merge of #31054 - steveklabnik:a11y, r=alexcrichton
I've been interested in the accessibility of Rustdoc's output, but never did anything about it. Today, I ran a tool, and it suggested adjusting some colors.

Here's some screen shots. Before:
![2016-01-20-114944_443x199_scrot](https://cloud.githubusercontent.com/assets/27786/12455979/d84d7ae8-bf6b-11e5-9aea-0602fb1a8cfa.png)

After:

![2016-01-20-114516_453x204_scrot](https://cloud.githubusercontent.com/assets/27786/12455841/36a55d14-bf6b-11e5-8014-239594c12e46.png)

As you can see, the link text is just a _shade_ darker.

Browsable: http://www.steveklabnik.com/rust-a11y-doc-testing/doc/std/
2016-01-23 09:38:42 -05:00
Steve Klabnik 3f56b29715 Rollup merge of #31050 - apasel422:issue-31048, r=Manishearth
Closes #31048

r? @Manishearth
2016-01-23 09:38:42 -05:00
Steve Klabnik 82626b1ec8 Rollup merge of #31045 - Manishearth:diag-prim-shadow, r=steveklabnik
I tried to add an inline `span_suggestion()` to the error as well, but since generics don't have their own span it becomes too fragile/complicated to work.

r? @steveklabnik

fixes #19477
2016-01-23 09:38:42 -05:00
Steve Klabnik 97f9e262fe Rollup merge of #31035 - nathankleyn:improve-visibility-of-entry-api, r=steveklabnik
Responding to [a thread of discussion on the Rust subreddit](https://www.reddit.com/r/rust/comments/3racik/mutable_lifetimes_are_too_long_when_matching_an/),
it was identified that the presence of the Entry API is not duly
publicised. This commit aims to add some reasonable examples of
common usages of this API to the main example secion of the `HashMap`
documentation.

This is part of issue #29348.
2016-01-23 09:38:41 -05:00
Steve Klabnik 068fa97c4e Rollup merge of #31031 - brson:issue-30123, r=nikomatsakis
This was fixed in passing. Adding a regression test.
2016-01-23 09:38:41 -05:00
Steve Klabnik 03b4bf20f6 Rollup merge of #31019 - andreabedini:patch-1, r=alexcrichton
Documentation of `CStr::from_ptr` suggests using `str::from_utf8(slice.to_bytes()).unwrap()`
to obtain a `&str` but `CStr` has `CStr::to_str` that does exactly that.

(First PR, be nice :)
2016-01-23 09:38:41 -05:00
Steve Klabnik e598b43243 Rollup merge of #30997 - bluss:trait-default, r=nikomatsakis
Fix type parameter default error to mention type and trait definitions

Introduced in PR #30724, needs to mention that type parameter defaults
are legal in trait and type definitions too.
2016-01-23 09:38:41 -05:00
bors b78b9ae7b3 Auto merge of #30997 - bluss:trait-default, r=nikomatsakis
Fix type parameter default error to mention type and trait definitions

Introduced in PR #30724, needs to mention that type parameter defaults
are legal in trait and type definitions too.
2016-01-23 14:31:26 +00:00
angelsl ac27ec2a48 Semaphore not sempahore 2016-01-23 22:15:59 +08:00
bors 1571c690f0 Auto merge of #31121 - Manishearth:prim-link, r=alexcrichton
We currently nest `<a>` tags which is doubleplusungood. So, for example, `(u8, u8)` will show up
with the left paren linked to the tuple primitive page, and the right paren unlinked, which looks ugly.
2016-01-23 11:38:43 +00:00
Manish Goregaokar 5a26a52a54 Handle generics in raw pointers 2016-01-23 15:32:10 +05:30
bors 332e345240 Auto merge of #30958 - dhodder:master, r=brson
The COPYRIGHT file should be updated to note that Rust no longer ships with AUTHORS.txt.

    $ git log -1 -- AUTHORS.txt
    commit 402749c539
    Author: Brian Anderson <banderson@mozilla.com>
    Date:   Wed Dec 2 22:16:08 2015 +0000

        Remove AUTHORS.txt and add-authors.sh

        Keeping this file up to date requires hours of work every release,
        even with the script. It is a fool's errand and we shall not do it
        any longer.
2016-01-23 09:49:34 +00:00
Sergey Veselkov 6a6e9a987a Fix the missing line in the guessing-game.md
r? @steveklabnik
2016-01-23 12:19:11 +03:00
bors 228afd7251 Auto merge of #30807 - kolloch:patch-1, r=steveklabnik
When I read the book, the following sentence of the reference documentation helped me greatly to understand slices:

"Slices are a view into a block of memory represented as a pointer and a length."

In this commit, I tried to integrate the gist of that into the slice section inside of "primitive-types.md". I am not a native speaker, so feel very free to improve the wording.

r? @steveklabnik
2016-01-23 07:44:17 +00:00
bors 8ff48fea13 Auto merge of #31126 - arielb1:remote-errors, r=eddyb
Also removed an unused and similarly buggy error path.

Fixes #30535

r? @eddyb
2016-01-23 05:54:38 +00:00
bors 93d03edcb8 Auto merge of #31124 - dirk:dirk/display-and-error-impls-for-string-parse-error, r=alexcrichton
Fixes #31106.

- [ ] I wasn't sure of the correct `#[stable(...)]` definition to use here. Happy to fix it if it's incorrect.
- [ ] `ParseError` is sort of an ephemeral non-error, but do let me know if the implementation of `error::Error` for it should return something more descriptive than "parse error".
2016-01-23 04:04:26 +00:00
bors d63b8e539f Auto merge of #31116 - bluss:expect-out-cold, r=alexcrichton
Use cold functions for panic formatting Option::expect, Result::unwrap, expect

These methods are marked inline, but insert a big chunk of formatting
code, as well as other error path related code, such as
deallocating a std::io::Error if you have one.

We can explicitly separate out that code path into a function that is
never inline, since the panicking case should always be rare.
2016-01-23 00:33:23 +00:00
bors c2740b6adb Auto merge of #31104 - nrc:save-fix-variant-data, r=alexcrichton 2016-01-22 22:42:33 +00:00
Matt Brubeck f81a11b7b8 Document that BTreeMap iteration is in order
Also change the examples to make this more obvious. Fixes #31129.
2016-01-22 14:10:59 -08:00
bors 292937607d Auto merge of #31095 - alexcrichton:remove-old-files, r=brson
These are either not used at all today or they're super old and haven't been used in ages, so clean them out.
2016-01-22 20:51:38 +00:00
Marc Bowes 97f9cad569 E0210: Add a warning about type aliases
E0210 explains about orphan rules and suggests using a local type as a
workaround. It wasn't obvious to me that I couldn't use a type
alias, so I added a note.
2016-01-22 22:20:36 +02:00
Kamal Marhubi a559577c2f Forward reference crates and modules chapter 2016-01-22 15:18:00 -05:00
Kamal Marhubi 9624b68207 book: Clarify that trait or type must be in same crate as impl 2016-01-22 14:37:37 -05:00
Dirk Gadsden 365deeb19a Simplify return for error::Error impl for string::ParseError 2016-01-22 14:34:39 -05:00