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

Rolling up PRs in the queue #14187

Merged
merged 33 commits into from
May 14, 2014
Merged

Rolling up PRs in the queue #14187

merged 33 commits into from
May 14, 2014

Commits on May 14, 2014

  1. std: Move the owned module from core to std

    The compiler was updated to recognize that implementations for ty_uniq(..) are
    allowed if the Box lang item is located in the current crate. This enforces the
    idea that libcore cannot allocated, and moves all related trait implementations
    from libcore to libstd.
    
    This is a breaking change in that the AnyOwnExt trait has moved from the any
    module to the owned module. Any previous users of std::any::AnyOwnExt should now
    use std::owned::AnyOwnExt instead. This was done because the trait is intended
    for Box traits and only Box traits.
    
    [breaking-change]
    alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    cbc31df View commit details
    Browse the repository at this point in the history
  2. Allow blocks in const expressions

    Only blocks with tail expressions that are const expressions
    and items are allowed.
    Kimundi authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    24ece07 View commit details
    Browse the repository at this point in the history
  3. Add tests for from_bits.

    Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
    omasanori authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    de2c48c View commit details
    Browse the repository at this point in the history
  4. Replaced ~T by Box<T> in manual

    aochagavia authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    a390b5d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    655487b View commit details
    Browse the repository at this point in the history
  6. Fix rust-lang#8391

    edwardw authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    5bf268d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    21867fa View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    74ad023 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    2f71b72 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    8c54d5b View commit details
    Browse the repository at this point in the history
  11. std: Rename str::Normalizations to str::Decompositions

    The Normalizations iterator has been renamed to Decompositions.
    It does not currently include all forms of Unicode normalization,
    but only encompasses decompositions.
    If implemented recomposition would likely be a separate iterator
    which works on the result of this one.
    
    [breaking-change]
    Florob authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    df802a2 View commit details
    Browse the repository at this point in the history
  12. docs: Add a not found page

    richo authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    ef23fa1 View commit details
    Browse the repository at this point in the history
  13. add a line to the example to clarify semantics

    This is to clarify that match construct doesn't define a new variable, since I
    observed a person reading the Rust tutorial who seemed to incorrectly think
    that it did. Fixes rust-lang#13571 .
    Zooko Wilcox-O'Hearn authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    0004953 View commit details
    Browse the repository at this point in the history
  14. rustc: Make std_inject valid for pretty-printer

    Inject `extern crate {std, native}` before `use` statements.
    Add `#![feature(glob)]` since `use std::prelude::*` is used.
    
    (Unfortunately `rustc --pretty expanded` does not converge,
    since `extern crate` and `use std::prelude::*` is injected at every
    iteration.)
    klutzy authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    6d535b5 View commit details
    Browse the repository at this point in the history
  15. pprust: Add parentheses to some Expr

    Some `Expr` needs parentheses when printed. For example, without
    parentheses, `ExprUnary(UnNeg, ExprBinary(BiAdd, ..))` becomes
    `-lhs + rhs` which is wrong.
    
    Those cases don't appear in ordinary code (since parentheses are
    explicitly added) but they can appear in manually crafted ast by
    extensions.
    klutzy authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    7f203b6 View commit details
    Browse the repository at this point in the history
  16. pprust: Fix asm output

    klutzy authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    cc31bb0 View commit details
    Browse the repository at this point in the history
  17. pprust: Print &&e instead of & &e

    klutzy authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    4675a87 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    90d976e View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    bdd360b View commit details
    Browse the repository at this point in the history
  20. test: Add missing #![feature(managed_boxes)]

    The tests use managed boxes, but are not perfectly feature-gated because
    they use `@` inside macros. (It causes issue after `--pretty expanded`.)
    klutzy authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    0350d8e View commit details
    Browse the repository at this point in the history
  21. compiletest: Modernize typenames

    klutzy authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    96eeda9 View commit details
    Browse the repository at this point in the history
  22. compiletest: Test --pretty expanded

    After testing `--pretty normal`, it tries to run `--pretty expanded` and
    typecheck output.
    Here we don't check convergence since it really diverges: for every
    iteration, some extra lines (e.g.`extern crate std`) are inserted.
    
    Some tests are `ignore-pretty`-ed since they cause various issues
    with `--pretty expanded`.
    klutzy authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    ce8c467 View commit details
    Browse the repository at this point in the history
  23. Touch up and rebase previous commits

    * Added `// no-pretty-expanded` to pretty-print a test, but not run it through
      the `expanded` variant.
    * Removed #[deriving] and other expanded attributes after they are expanded
    * Removed hacks around &str and &&str and friends (from both the parser and the
      pretty printer).
    * Un-ignored a bunch of tests
    alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    1237530 View commit details
    Browse the repository at this point in the history
  24. syntax: Fix printing INT64_MIN

    Integers are always parsed as a u64 in libsyntax, but they're stored as i64. The
    parser and pretty printer both printed an i64 instead of u64, sometimes
    introducing an extra negative sign.
    alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    042c8ae View commit details
    Browse the repository at this point in the history
  25. syntax: Fix parsing << with closure types

    This uses the trick of replacing the << token with a < token to parse closure
    types correctly.
    
    Closes rust-lang#13324
    alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    ac1a270 View commit details
    Browse the repository at this point in the history
  26. test: Fix a pretty printing test

    The pretty printer handles inlines comments quite badly
    alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    560def1 View commit details
    Browse the repository at this point in the history
  27. test: Ignore a pretty expanded failing test

    When expanding, an extra unsafe block is generated which is currently not
    handled well.
    alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    1581fb8 View commit details
    Browse the repository at this point in the history
  28. syntax: Print suffixed token literals correctly

    Previously, literals "1i" were printed as "1". This fixes the
    numeric-method-autoexport test for pretty printing.
    alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    d92b9ae View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    f912005 View commit details
    Browse the repository at this point in the history
  30. syntax: Preserve attributes in #[deriving]

    Now that the #[deriving] attribute is removed, the raw_pointers_deriving lint
    was broken. This commit restores the lint by preserving lint attributes
    across #[deriving] to the implementations and using #[automatically_derived] as
    the trigger for activating the lint.
    alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    25ac81e View commit details
    Browse the repository at this point in the history
  31. syntax: Improve --pretty normal slightly

    When printing doc comments, always put a newline after them in a macro
    invocation to ensure that a line-doc-comment doesn't consume remaining tokens on
    the line.
    alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    6878039 View commit details
    Browse the repository at this point in the history
  32. rustllvm: Add LLVMRustArrayType

    LLVM internally uses `uint64_t` for array size, but the corresponding
    C API (`LLVMArrayType`) uses `unsigned int` so ths value is truncated.
    Therefore rustc generates wrong type for fixed-sized large vector e.g.
    `[0 x i8]` for `[0u8, ..(1 << 32)]`.
    
    This patch adds `LLVMRustArrayType` function for `uint64_t` support.
    klutzy authored and alexcrichton committed May 14, 2014
    Configuration menu
    Copy the full SHA
    9f7caed View commit details
    Browse the repository at this point in the history
  33. io: Implement process wait timeouts

    This implements set_timeout() for std::io::Process which will affect wait()
    operations on the process. This follows the same pattern as the rest of the
    timeouts emerging in std::io::net.
    
    The implementation was super easy for everything except libnative on unix
    (backwards from usual!), which required a good bit of signal handling. There's a
    doc comment explaining the strategy in libnative. Internally, this also required
    refactoring the "helper thread" implementation used by libnative to allow for an
    extra helper thread (not just the timer).
    
    This is a breaking change in terms of the io::Process API. It is now possible
    for wait() to fail, and subsequently wait_with_output(). These two functions now
    return IoResult<T> due to the fact that they can time out.
    
    Additionally, the wait_with_output() function has moved from taking `&mut self`
    to taking `self`. If a timeout occurs while waiting with output, the semantics
    are undesirable in almost all cases if attempting to re-wait on the process.
    Equivalent functionality can still be achieved by dealing with the output
    handles manually.
    
    [breaking-change]
    
    cc rust-lang#13523
    alexcrichton committed May 14, 2014
    9 Configuration menu
    Copy the full SHA
    f09592a View commit details
    Browse the repository at this point in the history