Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rollup of 12 pull requests #30457

Merged
merged 21 commits into from
Dec 18, 2015
Merged

Rollup of 12 pull requests #30457

merged 21 commits into from
Dec 18, 2015

Conversation

jwworth and others added 13 commits December 15, 2015 12:51
The previous example had no chance of compiling in either form, due to the restrictive follow set for `ty`. This one has the desired behavior: http://is.gd/kYdw4g (well, I don't exactly desire this behavior at all, but it's true at least :p )
Also split out emitters into their own module.
The intention here is that Session is a very thin wrapper over the error handling infra.
Remove a needless variable and simply a cfg().
Added some additional descriptive sentences and changed x to an int in
the example
LLVM doesn't really support reusing the same module to emit more than
one file. One bug this causes is that the IR is invalidated by the stack
coloring pass when emitting the first file, and then the IR verifier
complains by the time we try to emit the second file. Also, we get
different binaries with --emit=asm,link than with just --emit=link. In
some cases leading to segfaults.

Unfortunately, it seems that at this point in time, the most sensible
option to circumvent this problem is to just clone the whole llvm module
for the asm output if we need both, asm and obj file output.

Fixes rust-lang#24876
Fixes rust-lang#26235
@Manishearth
Copy link
Member Author

@bors r+ p=20 force

@bors
Copy link
Contributor

bors commented Dec 18, 2015

📌 Commit aad3977 has been approved by Manishearth

@Manishearth Manishearth assigned Manishearth and unassigned pnkfelix Dec 18, 2015
@bors
Copy link
Contributor

bors commented Dec 18, 2015

⌛ Testing commit aad3977 with merge ce719cc...

@bors
Copy link
Contributor

bors commented Dec 18, 2015

💔 Test failed - auto-win-msvc-64-opt

…sakis

previously the error was erased and a `non-const path` error was emitted at the location of the field access instead of at the overflow location (as can be seen in the playground: http://is.gd/EuAF5F )
@Manishearth
Copy link
Member Author

@bors r+ force

@bors
Copy link
Contributor

bors commented Dec 18, 2015

📌 Commit b8d0221 has been approved by Manishearth

@bors
Copy link
Contributor

bors commented Dec 18, 2015

⌛ Testing commit b8d0221 with merge d30272a...

@bors
Copy link
Contributor

bors commented Dec 18, 2015

💔 Test failed - auto-mac-64-opt

Should make it possible to add JSON or HTML errors. Also tidies up a lot.
…sanxiyn

This fixes a double word typo, 'the'.
The previous example had no chance of compiling in either form, due to the restrictive follow set for `ty`. This one has the desired behavior: http://is.gd/kYdw4g (well, I don't exactly desire this behavior at all, but it's true at least :p )
@Manishearth
Copy link
Member Author

@bors r+ force

@bors
Copy link
Contributor

bors commented Dec 18, 2015

📌 Commit e4719b1 has been approved by Manishearth

@bors
Copy link
Contributor

bors commented Dec 18, 2015

⌛ Testing commit e4719b1 with merge a7d5b0c...

@bors
Copy link
Contributor

bors commented Dec 18, 2015

💔 Test failed - auto-linux-musl-64-opt

Remove a needless variable and simply a cfg().
Added sentences for description of code and changed x in the example to an int
LLVM doesn't really support reusing the same module to emit more than
one file. One bug this causes is that the IR is invalidated by the stack
coloring pass when emitting the first file, and then the IR verifier
complains by the time we try to emit the second file. Also, we get
different binaries with --emit=asm,link than with just --emit=link. In
some cases leading to segfaults.

Unfortunately, it seems that at this point in time, the most sensible
option to circumvent this problem is to just clone the whole llvm module
for the asm output if we need both, asm and obj file output.

Fixes rust-lang#24876
Fixes rust-lang#26235
@Manishearth
Copy link
Member Author

@bors r+

@bors
Copy link
Contributor

bors commented Dec 18, 2015

📌 Commit a8e4246 has been approved by Manishearth

@bors
Copy link
Contributor

bors commented Dec 18, 2015

⌛ Testing commit a8e4246 with merge 3391630...

bors added a commit that referenced this pull request Dec 18, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rollup A PR which is a rollup
Projects
None yet
Development

Successfully merging this pull request may close these issues.