Skip to content

Add builtin Sized kind and a few basic tests #6852

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

Closed
wants to merge 461 commits into from
Closed

Conversation

bblum
Copy link
Contributor

@bblum bblum commented May 31, 2013

catamorphism and others added 30 commits May 21, 2013 13:12
The way we deal with unreachable expressions in trans is pretty ad hoc,
but this at least doesn't make it worse, and eliminates the LLVM
assertion failure reported in rust-lang#5741.
…tsakis

r? @nikomatsakis The way we deal with unreachable expressions in trans is pretty ad hoc,
but this at least doesn't make it worse, and eliminates the LLVM
assertion failure reported in rust-lang#5741.
This fixes segmentation fault of new rt tests.
For example
```
use core::rt::test::*;
use core::rt::comm::*;
use core::cell::Cell;

fn main() {
    do run_in_newsched_task {
        let (port, chan) = oneshot::<~int>();
        let port_cell = Cell(port);
        do spawntask_immediately {
            assert!(port_cell.take().recv() == ~10);
        }
        chan.send(~10);
    }
}
```
This verifies that a static item evaluates to true, at compile time.
This verifies that a static item evaluates to true, at compile time.
The error message is extremely unideal.
Fix issue rust-lang#6209, and some related issues about constant expression
 - unmatched type between arms
 - unmatched type in range
This can perhaps be restored in the future. For now this is a precursor to
making typedefs work as expected.
…with -O0.

This improves -O0 compile times dramatically.
pcwalton and others added 27 commits May 29, 2013 21:21
Show `int_suffix_size` to appear 0 or 1 times
Show `exponent | . dec_lit` to appear 0 or 1 times, to show why `3f;` is a valid number
Show `int_suffix_size` to appear 0 or 1 times
Show `exponent | . dec_lit` to appear 0 or 1 times, to show why `3f;` is a valid number
Add some more cases for warning about missing documentation, and also add a test
to make sure it doesn't die in the future.
Adds documentation for various things that I understand.
Adds #[allow(missing_doc)] for lots of things that I don't understand.
These commits perform a variety of actions:

1. The linting of missing documentation has been consolidated under one `missing_doc` attribute, and many more things are linted about.
2. A test was added for linting missing documentation, which revealed a large number of corner cases in both linting and the `missing_doc` lint pass. Some notable edge cases:
  * When compiling with `--test`, all `missing_doc` warnings are suppressed
  * If any parent of the current item has `#[doc(hidden)]`, then the `missing_doc` warning is suppressed
3. Both the std and extra libraries were modified to `#[deny(missing_doc)]` by default.

I believe that the libraries are getting to the point where they're fairly well documented, and they should definitely stay that way. If developing a particular new module, it's easy enough to add `#[allow(missing_doc)]` at the top, but those should definitely be flags for removal in favor of actual documentation.

I added as much documentation as I could throughout std/extra, although I avoided trying to document things that I knew nothing about. I can't say that this lint pass will vouch for the quality of the documentation of std/extra, but it will certainly make sure that there's at least some describing words.

That being said, I may have a different opinion, so I don't mind amending these commits to turn off the lint by default for std/extra if people think otherwise.
…rite-basedir, r=catamorphism

Attempt to get reuse of common object code from multiple clones in different directories.

This is a followup to issue rust-lang#6805.
…ts, r=graydon

Re-enables `make check-stage2-doc-tutorial` and friends. r? @brson
@bblum
Copy link
Contributor Author

bblum commented May 31, 2013

oh my goodness I did something wrong

@bblum bblum closed this May 31, 2013
flip1995 pushed a commit to flip1995/rust that referenced this pull request Mar 11, 2021
Remove a couple MIR usages

changelog: none

We use MIR to get the return type of a closure/function in a couple places. But typeck seems like a better approach.

This is the easy part of rust-lang#6080.

Also did a tiny cleanup with `typeck` -> `typeck_body`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.