Permalink
Commits on Apr 17, 2015
  1. Auto merge of #24500 - pnkfelix:oflo-checked-neg, r=nikomatsakis

    Add conditional overflow-checking to signed negate operator.
    
    I argue this can land independently of #24420 , because one can write the implementation of `wrapped_neg()` inline if necessary (as illustrated in two cases on this PR).
    
    This needs to go into beta channel.
    bors committed Apr 17, 2015
  2. Auto merge of #24461 - nikomatsakis:issue-22077-unused-lifetimes, r=a…

    …turon
    
    This makes it illegal to have unconstrained lifetimes that appear in an associated type definition. Arguably, we should prohibit all unconstrained lifetimes -- but it would break various macros. It'd be good to evaluate how large a break change it would be. But this seems like the minimal change we need to do to establish soundness, so we should land it regardless. Another variant would be to prohibit all lifetimes that appear in any impl item, not just associated types. I don't think that's necessary for soundness -- associated types are different because they can be projected -- but it would feel a bit more consistent and "obviously" safe. I'll experiment with that in the meantime.
    
    r? @aturon 
    
    Fixes #22077.
    bors committed Apr 17, 2015
  3. Fix some missing cases

    nikomatsakis committed Apr 17, 2015
  4. Augment the constrainted parameter check to ensure that all regions

    which get mentioned in an associated type are constrained.  Arguably we
    should just require that all regions are constrained, but that is more
    of a breaking change.
    nikomatsakis committed Apr 15, 2015
  5. Rewrite constrained type params code to operate generically over

    multiple kinds of parameters (regions and types, specifically)
    nikomatsakis committed Apr 15, 2015
  6. Rollup merge of #24515 - steveklabnik:gh24070, r=Gankro

     Fixes #24070
    
    or rather, fixes it even though it's already been fixed: slices are before now. But the linking is nice anyway.
    Manishearth committed Apr 17, 2015
  7. Rollup merge of #24510 - fhartwig:broken-links, r=nikomatsakis

     Fix broken links in various parts of the docs.
    I also found a dead link [here](http://doc.rust-lang.org/nightly/alloc/boxed/) (the first link on the page), but the chapter of the book that it used to point at seems to be gone, and I'm not sure what should happen to that link.
    Manishearth committed Apr 17, 2015
  8. Rollup merge of #24494 - mvdnes:deterministic-sidebar, r=alexcrichton

     This ensures that later when generating HTML, the JSON will be sorted aswell.
    We now have a more deterministic build of sidebar-items.js
    
    Closes #24473
    Manishearth committed Apr 17, 2015
  9. Rollup merge of #24493 - aethanyc:fix-stackoverflow-link, r=steveklabnik

     The document does not display properly if the link id contains a space.
    Manishearth committed Apr 17, 2015
  10. Rollup merge of #23782 - mvdnes:obsolete_note, r=alexcrichton

     When emmitting a note, previously it was not known if the note was for an error or a
    warning. If it was for a warning, then with `-Awarnings` it should not have been print.
    The `emit_for` function allows someone to specify which level should determine its visibility.
    
    An example:
    ```rust
    extern crate \"std\" as std2;
    fn main() {}
    ```
    
    When compiling with `-Awarnings`, this would previously emit `note: use an identifier not in quotes instead` (and nothing else).
    With this patch, it will be completely silent as expected.
    Manishearth committed Apr 17, 2015
  11. Rollup merge of #24491 - bluss:rangefull-debug, r=huonw

     Fix Debug impl for RangeFull
    
    The Debug impl was using quotes, which was inconsistent:
    
        => (.., 1.., 2..3, ..4)
        (\"..\", 1.., 2..3, ..4)
    
    Fix to use just ..
    Manishearth committed Apr 17, 2015
  12. Rollup merge of #24454 - aochagavia:debug, r=alexcrichton

     Implement `Debug`, `Display` and `Error` for `FatalError` and `ExplicitBug`
    Manishearth committed Apr 17, 2015
  13. Rollup merge of #24430 - laumann:trace-macros-flag, r=pnkfelix

     This is the second attempt at turning the trace_macros macro into a compiler flag.
    
    See #22619
    Manishearth committed Apr 17, 2015
  14. factor out useful helper.

    pnkfelix committed Apr 15, 2015
  15. Auto merge of #24422 - pnkfelix:typeck-highlevel-before-bodies, r=nik…

    …omatsakis
    
    typeck: Do high-level structural/signature checks before function body checks.
    
    This avoids various ICEs, e.g. premature calls to cat_expr that yield the dreaded "cat_expr Errd" ICE.
    
    However, it also means that some early error feedback is now not provided.  This may be for the best, because the error feedback were were providing in some of those cases were false positives -- it was spurious feedback and a distraction from the real problem.
    
    So it is not 100% clear whether we actually want to put this change in or not.  I think its a net win, but others might disagree.
    
    (Kudos to @arielb1 for suggesting this modification.)
    bors committed Apr 17, 2015