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 10 pull requests #58426

Closed
wants to merge 36 commits into from
Closed

Rollup of 10 pull requests #58426

wants to merge 36 commits into from

Commits on Feb 5, 2019

  1. Configuration menu
    Copy the full SHA
    b91ccc3 View commit details
    Browse the repository at this point in the history

Commits on Feb 7, 2019

  1. De-duplicate number formatting implementations for smaller code size

    Instead of inlining the same logic into every number formatting implementation,
    pull it out into a function that each of the number formatting impls call into.
    fitzgen committed Feb 7, 2019
    Configuration menu
    Copy the full SHA
    da5a0cd View commit details
    Browse the repository at this point in the history
  2. De-duplicate write_prefix lambda in pad_integral

    For smaller code size.
    fitzgen committed Feb 7, 2019
    Configuration menu
    Copy the full SHA
    ed2157a View commit details
    Browse the repository at this point in the history
  3. Un-monomorphize and inline formatting with padding

    The generic `F` in `with_padding` was causing a bunch of stuff to get inlined
    that otherwise needn't be, blowing up code size.
    fitzgen committed Feb 7, 2019
    Configuration menu
    Copy the full SHA
    e633f15 View commit details
    Browse the repository at this point in the history
  4. Add fixme

    estebank committed Feb 7, 2019
    Configuration menu
    Copy the full SHA
    0afda05 View commit details
    Browse the repository at this point in the history
  5. Improve the error messages for missing stability attributes

    This makes the capitalisation consistent and provides more context (especially for missing top-level attributes).
    varkor committed Feb 7, 2019
    Configuration menu
    Copy the full SHA
    05f0dee View commit details
    Browse the repository at this point in the history

Commits on Feb 8, 2019

  1. Configuration menu
    Copy the full SHA
    c104b5c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    05df9ff View commit details
    Browse the repository at this point in the history
  3. Use write_char for writing padding characters

    Removes some unsafe *and* saves almost half a kilobyte of code size.
    fitzgen committed Feb 8, 2019
    Configuration menu
    Copy the full SHA
    8fea705 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f00f0e6 View commit details
    Browse the repository at this point in the history
  5. Use descriptive variant name

    varkor committed Feb 8, 2019
    Configuration menu
    Copy the full SHA
    03d4fd9 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    bb1eed0 View commit details
    Browse the repository at this point in the history

Commits on Feb 10, 2019

  1. Configuration menu
    Copy the full SHA
    18089df View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d7afd3e View commit details
    Browse the repository at this point in the history

Commits on Feb 11, 2019

  1. Configuration menu
    Copy the full SHA
    3737d4d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    87cd09b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2a8a25b View commit details
    Browse the repository at this point in the history
  4. Update existing rustdoc test

    varkor committed Feb 11, 2019
    Configuration menu
    Copy the full SHA
    3dc660f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    01df8fe View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    c875241 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    b5fa870 View commit details
    Browse the repository at this point in the history
  8. Only suggest imports if not imported.

    This commit modifies name resolution error reporting so that if a name
    is in scope and has been imported then we do not suggest importing it.
    
    This can occur when we add a label about constructors not being visible
    due to private fields. In these cases, we know that the struct/variant
    has been imported and we should silence any suggestions to import the
    struct/variant.
    davidtwco committed Feb 11, 2019
    Configuration menu
    Copy the full SHA
    48b0c9d View commit details
    Browse the repository at this point in the history

Commits on Feb 12, 2019

  1. Configuration menu
    Copy the full SHA
    ddb6c4f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3a8448c View commit details
    Browse the repository at this point in the history

Commits on Feb 13, 2019

  1. HirId-ify hir::BodyId

    ljedrz committed Feb 13, 2019
    Configuration menu
    Copy the full SHA
    eac43cc View commit details
    Browse the repository at this point in the history
  2. target/uefi: clarify documentation

    This clarifies why FP-units are disabled on UEFI targets, as well as
    why we must opt into the NXCOMPAT feature.
    
    I did find some time to investigate why GRUB and friends disable FP on
    UEFI. The specification explicitly allows using MMX/SSE/AVX, but as it
    turns out it does not mandate enabling the instruction sets explicitly.
    Hence, any use of these instructions will trigger CPU exceptions,
    unless an application explicitly enables them (which is not an option,
    as these are global flags that better be controlled by the
    kernel/firmware).
    
    Furthermore, UEFI systems are allowed to mark any non-code page as
    non-executable. Hence, we must make sure to never place code on the
    stack or heap. So we better pass /NXCOMPAT to the linker for it to
    complain if it ever places code in non-code pages.
    
    Lastly, this fixes some typos in related comments.
    dvdhrm committed Feb 13, 2019
    Configuration menu
    Copy the full SHA
    15e4bd3 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#58167 - ljedrz:HirIdify_body_id, r=Zoxc

    HirId-ify hir::BodyId
    
    Another step towards rust-lang#57578.
    Centril authored Feb 13, 2019
    Configuration menu
    Copy the full SHA
    9cb5831 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#58202 - varkor:deprecated-future-external, …

    …r=GuillaumeGomez
    
    Ignore future deprecations in #[deprecated]
    
    The future deprecation warnings should only apply to `#[rustc_deprecated]` as they take into account rustc's version. Fixes rust-lang#57952.
    
    I've also slightly modified rustdoc's display of future deprecation notices to make it more consistent, so I'm assigning a rustdoc team member for review to make sure this is okay.
    
    r? @GuillaumeGomez
    Centril authored Feb 13, 2019
    Configuration menu
    Copy the full SHA
    a603e2a View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#58204 - estebank:impl-trait-semi, r=zackmdavis

    On return type `impl Trait` for block with no expr point at last semi
    
    Partial solution, doesn't actually validate that the last statement in the function body can satisfy the trait bound, but it's a good incremental improvement over the status quo.
    
    ```
    error[E0277]: the trait bound `(): Bar` is not satisfied
      --> $DIR/impl-trait-return-trailing-semicolon.rs:3:13
       |
    LL | fn foo() -> impl Bar {
       |             ^^^^^^^^ the trait `Bar` is not implemented for `()`
    LL |     5;
       |      - consider removing this semicolon
       |
       = note: the return type of a function must have a statically known size
    ```
    
    Partially addresses rust-lang#54771.
    Centril authored Feb 13, 2019
    Configuration menu
    Copy the full SHA
    7579ba9 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#58272 - fitzgen:num-format-code-size, r=Mar…

    …k-Simulacrum
    
    Cut down on number formating code size
    
    r? @alexcrichton
    Centril authored Feb 13, 2019
    Configuration menu
    Copy the full SHA
    dfd8454 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#58276 - varkor:missing-stability-attr-top-l…

    …evel, r=davidtwco
    
    Improve the error messages for missing stability attributes
    
    This makes the capitalisation consistent and provides more context (especially for missing top-level attributes).
    Centril authored Feb 13, 2019
    Configuration menu
    Copy the full SHA
    d18e4f0 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#58354 - matthewjasper:mir-dump-fixes, r=wes…

    …leywiser
    
    Fix ICE and invalid filenames in MIR printing code
    
    * Don't panic when printing MIR for associated constants
    * Don't use `<` and `>` in filenames, since they aren't allowed on Windows.
    
    r? @eddyb
    
    cc @RalfJung
    Centril authored Feb 13, 2019
    Configuration menu
    Copy the full SHA
    e35e9ee View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#58381 - davidtwco:issue-42944, r=estebank

    Only suggest imports if not imported.
    
    Fixes rust-lang#42944 and fixes rust-lang#53430.
    
    This commit modifies name resolution error reporting so that if a name
    is in scope and has been imported then we do not suggest importing it.
    
    This can occur when we add a label about constructors not being visible
    due to private fields. In these cases, we know that the struct/variant
    has been imported and we should silence any suggestions to import the
    struct/variant.
    
    r? @estebank
    Centril authored Feb 13, 2019
    Configuration menu
    Copy the full SHA
    2a61352 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    61caf1f View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#58400 - gnzlbg:fix_driver, r=oli-obk

    Fix rustc_driver swallowing errors when compilation is stopped
    
    r? @oli-obk
    Centril authored Feb 13, 2019
    Configuration menu
    Copy the full SHA
    df020a7 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#58420 - dvdhrm:target-uefi-comments, r=nagisa

    target/uefi: clarify documentation
    
    This clarifies why FP-units are disabled on UEFI targets, as well as
    why we must opt into the NXCOMPAT feature.
    
    I did find some time to investigate why GRUB and friends disable FP on
    UEFI. The specification explicitly allows using MMX/SSE/AVX, but as it
    turns out it does not mandate enabling the instruction sets explicitly.
    Hence, any use of these instructions will trigger CPU exceptions,
    unless an application explicitly enables them (which is not an option,
    as these are global flags that better be controlled by the
    kernel/firmware).
    
    Furthermore, UEFI systems are allowed to mark any non-code page as
    non-executable. Hence, we must make sure to never place code on the
    stack or heap. So we better pass /NXCOMPAT to the linker for it to
    complain if it ever places code in non-code pages.
    
    Lastly, this fixes some typos in related comments.
    
    r? @alexcrichton
    Centril authored Feb 13, 2019
    Configuration menu
    Copy the full SHA
    01533d4 View commit details
    Browse the repository at this point in the history