Commit Graph

91121 Commits

Author SHA1 Message Date
QuietMisdreavus
5eb1ab5265 print doc coverage as a table of individual item types 2019-02-28 16:11:21 -06:00
QuietMisdreavus
95500c078b refactor: combine item count numbers into a new struct 2019-02-28 16:07:45 -06:00
QuietMisdreavus
fc9459351c count fewer items in calculate-doc-coverage 2019-02-28 16:01:27 -06:00
QuietMisdreavus
9e98a25b95 tabs -> spaces 2019-02-28 16:01:27 -06:00
QuietMisdreavus
009c91a294 add option to calculate documentation coverage 2019-02-28 16:01:27 -06:00
Alex Gaynor
96be181c7e
Fixed a syntax error in the pin docs 2019-02-28 16:34:03 -05:00
bors
350674b718 Auto merge of #58250 - Zoxc:rustc-interface-1, r=oli-obk
Introduce rustc_interface and move some methods there

Split out from https://github.com/rust-lang/rust/pull/56732

r? @oli-obk
2019-02-28 21:02:12 +00:00
John Kåre Alsaker
23a51f91c9 Introduce rustc_interface and move some methods there 2019-02-28 19:30:31 +01:00
Guillaume Gomez
405d950802 Move rustdoc-js testing into compiletest 2019-02-28 18:08:48 +01:00
Jon Gjengset
c5fe4055a9
Clarify distinction between floor() and trunc() 2019-02-28 10:23:20 -05:00
bors
1999a22881 Auto merge of #57760 - dlrobertson:varargs1, r=alexreg
Support defining C compatible variadic functions

## Summary

Add support for defining C compatible variadic functions in unsafe rust with
`extern "C"` according to [RFC 2137].

## Details

### Parsing
When parsing a user defined function that is `unsafe` and `extern "C"` allow
variadic signatures and inject a "spoofed" `VaList` in the new functions
signature. This allows the user to interact with the variadic arguments via a
`VaList` instead of manually using `va_start` and `va_end` (See [RFC 2137] for
details).

### Codegen

When running codegen for a variadic function, remove the "spoofed" `VaList`
from the function signature and inject `va_start` when the arg local
references are created for the function and `va_end` on return.

## TODO

 - [x] Get feedback on injecting `va_start/va_end` in MIR vs codegen
 - [x] Properly inject `va_end` - It seems like it should be possible to inject
       `va_end` on the `TerminatorKind::Return`. I just need to figure out how
       to get the `LocalRef` here.
 - [x] Properly call Rust defined C variadic functions in Rust - The spoofed
       `VaList` causes problems here.

Related to: #44930

r? @ghost

[RFC 2137]: https://github.com/rust-lang/rfcs/blob/master/text/2137-variadic.md
2019-02-28 15:00:25 +00:00
bors
190feb6529 Auto merge of #58208 - taiki-e:libstd-2018, r=Centril
libstd => 2018

Transitions `libstd` to Rust 2018; cc #58099

r? @Centril
2019-02-28 11:38:40 +00:00
Mazdak Farrokhzad
0c1a38ce3b
Update src/libcore/mem.rs
Co-Authored-By: RalfJung <post@ralfj.de>
2019-02-28 09:24:35 +01:00
Nicholas Nethercote
fbdece47c8 Ensure record_layout_for_printing() is inlined.
This reduces instruction counts for the `ctfe-stress-2` benchmark by
about 1%.
2019-02-28 19:10:43 +11:00
Tim
797d8ea478 Make Unique::as_ptr, NonNull::dangling and NonNull::cast const
Make `Unique::as_ptr` const without feature attribute as it's unstable
Make `NonNull::dangling` and `NonNull::cast` const with `feature = "const_ptr_nonnull"`
2019-02-28 07:32:13 +01:00
Eric Huss
3aca176fb2 Update edition-guide 2019-02-27 21:09:10 -08:00
Denys Zariaiev
5c7ec6c421 Introduce assembly tests 2019-02-27 23:33:05 +01:00
Andy Russell
a998b1f425
allow specifying attributes for tool lints 2019-02-27 16:50:47 -05:00
Taiki Endo
aad9e29f52 Fix rebase fail 2019-02-28 04:06:17 +09:00
Taiki Endo
90dbf59b92 Fix some imports and paths 2019-02-28 04:06:17 +09:00
Taiki Endo
9d691bd9ce Fix error in tag-that-dare-not-speak-its-name 2019-02-28 04:06:16 +09:00
Taiki Endo
2af18a2b38 Fix errors in test/ui 2019-02-28 04:06:16 +09:00
Taiki Endo
2c783c3543 Revert removed #![feature(nll)] 2019-02-28 04:06:16 +09:00
Taiki Endo
0749a04fb6 Fix #[macro_use] extern crate in sys/cloudabi 2019-02-28 04:06:15 +09:00
Taiki Endo
93b6d9e086 libstd => 2018 2019-02-28 04:06:15 +09:00
Ralf Jung
f92c20426e improve readability 2019-02-27 18:58:19 +01:00
Oliver Scherer
e67050e8b6 Don't promote function calls to nonpromotable things 2019-02-27 17:41:25 +01:00
Alex Crichton
320640060f Whitelist containers that allow older toolchains
We'll use this as a temporary measure to get an LLVM update landed, but
we'll have to go through and update images later to make sure they've
got the right toolchains.
2019-02-27 08:10:21 -08:00
Trevor Spiteri
b70a9532a9 Replace s with self in docs for str methods taking self. 2019-02-27 17:07:35 +01:00
bors
7e001e5c6c Auto merge of #58777 - Centril:rollup, r=Centril
Rollup of 14 pull requests

Successful merges:

 - #58075 (Fix for issue  #58050)
 - #58627 (rustdoc: move collapse and unindent docs passes earlier)
 - #58630 (Make `visit_clobber` panic-safe.)
 - #58678 (Deny `async fn` in 2015 edition)
 - #58680 (Fix an indexing error when using `x.py help`)
 - #58703 (Fix copy-pasted typo for read_string return value)
 - #58744 (Update dlmalloc to 0.1.3)
 - #58746 (std: docs: Disable running several Stdio doctests)
 - #58748 (update scoped_tls to 1.0)
 - #58749 (Reduce Repetitions of (n << amt) >> amt)
 - #58752 (Update string_cache_codegen to 0.4.2)
 - #58755 (Clarify `rotate_{left,right}` docs)
 - #58757 (Normalize the type Self resolves to in an impl)
 - #58761 (Add tracking issue for the unwind attribute)

Failed merges:

r? @ghost
2019-02-27 15:54:48 +00:00
Dan Robertson
f7dd4389f8
Fix doc comments in librustc/hir/lowering.rs 2019-02-27 10:21:59 -05:00
Dan Robertson
08bd4ff998
Rename variadic to c_variadic
Function signatures with the `variadic` member set are actually
C-variadic functions. Make this a little more explicit by renaming the
`variadic` boolean value, `c_variadic`.
2019-02-27 10:21:54 -05:00
Dan Robertson
a618ad6335
Refactor FunctionCx::codgen_terminator
- Move closures defined in codegen_terminator into a separate helper
   structure and implementation.
 - Create helper functions for each of the complex match arms on the
   terminators kind in codegen_terminator.
2019-02-27 10:21:50 -05:00
Dan Robertson
1a6e9e2408
Add c_variadic to the unstable-book
- Add the c_variadic language feature
 - Add the c_variadic library feature
2019-02-27 10:21:45 -05:00
Dan Robertson
210c6071b0
Add c_variadic language feature item 2019-02-27 10:21:40 -05:00
Dan Robertson
58147d486b
Support defining C compatible variadic functions
Add support for defining C compatible variadic functions in unsafe rust
with extern "C".
2019-02-27 10:21:35 -05:00
Dan Robertson
cd56472cc4
Fix tidy check for language and library features 2019-02-27 10:21:28 -05:00
Simon Heath
5dce719520 Vastly simplify TryFrom docs. 2019-02-27 16:03:11 +01:00
Simon Heath
60cf413a20 Incorporated review changes. 2019-02-27 16:03:11 +01:00
Simon Heath
72afe51d81 Slowly figuring out how rustdoc actually works.
Unfortunately trying to run doctests on my local machine is
not really faster than letting Travis do it...
2019-02-27 16:03:11 +01:00
Simon Heath
cc6f394d6f Fix some links in TryFrom docs. 2019-02-27 16:03:11 +01:00
Simon Heath
c1d1c6731c Fix a bunch of heckin' trailing whitespace 2019-02-27 16:02:25 +01:00
Simon Heath
12532277d5 Add basic docs to integer TryFrom impl macros.
They're not as good as `From` 'cause they don't stringify
the types and generate examples and so on, but it's a start.
2019-02-27 16:02:25 +01:00
Simon Heath
d2b1212558 Started expanding docs for TryFrom and TryInto.
The examples are still lacking for now, both for module docs
and for methods/impl's.
2019-02-27 16:02:25 +01:00
Ralf Jung
4e7d4c7778 ManuallyDrop != MaybeUninit 2019-02-27 15:32:32 +01:00
Oliver Middleton
911a633bb1
Remove copy paste error in char tests
Co-Authored-By: xfix <konrad@borowski.pw>
2019-02-27 14:44:20 +01:00
Konrad Borowski
988b3d5f9e Implement ExactSizeIterator for ToLowercase and ToUppercase 2019-02-27 14:30:15 +01:00
Mazdak Farrokhzad
1394b6f3a1
Rollup merge of #58761 - Mark-Simulacrum:add-feature-gate-unwind, r=Centril
Add tracking issue for the unwind attribute

cc https://github.com/rust-lang/rust/issues/58760
2019-02-27 13:32:37 +01:00
Mazdak Farrokhzad
5910271b91
Rollup merge of #58757 - aoikonomopoulos:issue-58212, r=oli-obk
Normalize the type Self resolves to in an impl

This is required at the very least in order to evaluate associated
constants for arrays.

Fixes #57796
Fixes #58212.

r? @oli-obk
cc @hellow554
2019-02-27 13:32:36 +01:00
Mazdak Farrokhzad
90cbf8ebf7
Rollup merge of #58755 - tbu-:pr_doc_clarifyrotate, r=Centril
Clarify `rotate_{left,right}` docs

I wondered what the `<<!` operator is although the exclamation mark was
only the end of the sentence.
2019-02-27 13:32:34 +01:00