Commit graph

7113 commits

Author SHA1 Message Date
Patrick Walton
c267821742 rustc: ";" to "," in enums 2012-01-19 18:04:25 -08:00
Patrick Walton
194d8e3bd5 lib: ";" to "," in enums 2012-01-19 18:04:24 -08:00
Graydon Hoare
874390831a Fix a bunch of broken internal links in the docs. Add a hokey link checker. 2012-01-19 17:50:21 -08:00
Brian Anderson
6d4884d983 libcore: Use 4x the number of scheduler threads for testing
An arbitrary number. I've done no measurements but it's intended to overcome
the effects of tasks randomly being scheduled to threads and no work stealing.

If scheduler threads == 1 then we just use a single test task.
2012-01-19 17:54:21 -08:00
Brian Anderson
928e55815c libcore: Do less blocking in the test runner 2012-01-19 17:54:21 -08:00
Patrick Walton
7a663032fb rustc: Remove trailing whitespace 2012-01-19 17:49:23 -08:00
Tim Chevalier
c7592803d9 Compute typestates for FRU exprs correctly, plus a bit of cleanup
The code in Issue 948 was causing typestate to diverge because
it was using the prestate for the whole expression -- not the post-
state for the fields list -- as the prestate for the record base
expression. Fixed.

Closes #948
2012-01-19 17:24:27 -08:00
Patrick Walton
b58f2b7bfb Merge pull request #1571 from kevina/fixup-1
Remove incorrect comments from a few test cases.
2012-01-19 17:21:29 -08:00
Kevin Atkinson
d388daa996 Remove incorrect comments from a few test cases. 2012-01-19 17:31:36 -07:00
Patrick Walton
035b56d8aa misc: "tag" -> "enum" for cargo, compiletest, fuzzer, rustdoc 2012-01-19 16:21:33 -08:00
Patrick Walton
3333fef1af test: "tag" -> "enum" in run-pass and run-fail 2012-01-19 16:11:17 -08:00
Patrick Walton
1461cfe416 test: "tag" -> "enum" in bench 2012-01-19 16:11:17 -08:00
Patrick Walton
d97783e3e5 test: "tag" -> "enum" in compile-fail 2012-01-19 16:01:47 -08:00
Patrick Walton
97ed871fc1 libcore: "tag" -> "enum" 2012-01-19 15:56:54 -08:00
Patrick Walton
c5a407b11b stdlib: "tag" -> "enum" 2012-01-19 15:22:25 -08:00
Patrick Walton
1731f5d709 test: Fix error patterns in name-clash-nullary 2012-01-19 14:47:43 -08:00
Tim Chevalier
94d2063577 Handle log expressions with a _|_-typed level
If we have log(foo, quux) where foo:_|_, just translate foo and
ignore the rest of the expression.

Closes #1459
2012-01-19 14:44:40 -08:00
Brian Anderson
840a057556 rustdoc: Add a blank line after the return value description 2012-01-19 14:35:19 -08:00
Brian Anderson
df9bf1f45f rustdoc: Attach return value descriptions to the doc tree 2012-01-19 14:35:18 -08:00
Brian Anderson
00afef0bd8 rustdoc: Run tystr pass before attr pass 2012-01-19 14:35:18 -08:00
Patrick Walton
daaeac56b1 rustc: Fix long lines 2012-01-19 14:34:23 -08:00
Patrick Walton
bdb8f6cf52 rustc: "tag" -> "enum" 2012-01-19 14:24:03 -08:00
Brian Anderson
e6a7383a5f cargo: Fix unused argument warning 2012-01-19 13:46:28 -08:00
Brian Anderson
48e916c8fa libstd: Long lines 2012-01-19 13:44:07 -08:00
Brian Anderson
f15182fffc Use fn~ to simplify the core::test interface 2012-01-19 13:37:01 -08:00
Tim Chevalier
3e25444e51 In trans, allow _|_-typed things to be the argument to fail
Rationale: _|_-typed things diverge, so it's safe to use them in
any context.

Closes #1465
2012-01-19 13:30:31 -08:00
Graydon Hoare
4e7de69cda Partial fix for #1561, doesn't actually "fix" the problem but you get output now.
There's still something wrong with #error here, possibly cross-crate issue.
2012-01-19 11:11:47 -08:00
Niko Matsakis
882bea5b6d Rename fn*() to fn() as originally planned. 2012-01-19 07:11:50 -08:00
Niko Matsakis
1f0b3d2247 treat fn*() as fn&()
This is not my ideal way of going about things.  I'd prefer not
to have expressions typed as fn*(), for example, but I couldn't
get that to work together with inferring the modes of arguments
and other corner cases.
2012-01-19 07:10:59 -08:00
Haitao Li
d699db699a rustc: Refactor lint check and avoid a segv fault
The segv fault issue is #1566
2012-01-19 20:31:43 +08:00
Haitao Li
7ffb2cb7e8 rustc: Name the lint-style check module lint
Issue #1543
2012-01-19 17:54:38 +08:00
Haitao Li
327a15d58c rustc: Add a usage pass to collect one-off analyses
This patch starts from move the analysis which checkes of probably
incorrectly usage of `int|uint` in native fn.

Issue #1543
2012-01-19 17:27:44 +08:00
Haitao Li
45c0651a49 rustc: Use io::println for time-passes data
Issue #1561
2012-01-19 17:25:15 +08:00
Tim Chevalier
5b028f527f Remove support for the '.' after a nullary tag in a pattern
(Commit also includes lots of changes to remove '.'s that a git
merge messed up, or else it was monkeys.)
2012-01-19 01:04:59 -08:00
Brian Anderson
9df0306889 rustdoc: Cleanup 2012-01-19 00:14:41 -08:00
Brian Anderson
f77458a676 rustdoc: Remove nullary-tag dots 2012-01-19 00:08:51 -08:00
Brian Anderson
398dadfeca rustdoc: Write the full path to each mod 2012-01-19 00:04:59 -08:00
Brian Anderson
42e5d451b7 rustdoc: Change the header scheme so that all mods are h2, fns h3 2012-01-19 00:04:59 -08:00
Brian Anderson
a5e0f037be rustdoc: Add path_pass for recording full paths to mods 2012-01-19 00:04:59 -08:00
Brian Anderson
c54f53b9d9 rustdoc: Add path field to doc::moddoc 2012-01-19 00:04:59 -08:00
Tim Chevalier
04a2887f87 Remove '.' after nullary tags in patterns
Does what it says on the tin.

The next commit will remove support for this syntax.
2012-01-18 23:17:34 -08:00
Brian Anderson
ca7cfbe3d0 rustdoc: Add more rustdocs 2012-01-18 23:11:20 -08:00
Tim Chevalier
b141de657b Merge remote-tracking branch 'mozilla/snap-stage3' 2012-01-18 23:01:40 -08:00
Tim Chevalier
88e11e567b Register snapshots 2012-01-18 22:46:18 -08:00
Brian Anderson
fb82e6ab79 rustdoc: Write fn arg descriptions to markdown 2012-01-18 22:40:06 -08:00
Brian Anderson
266cc7b0c3 rustdoc: Add fn arg descriptions to the doc tree 2012-01-18 22:24:29 -08:00
Brian Anderson
515fdb2863 rustdoc: Change field order on doc::fndoc 2012-01-18 21:57:18 -08:00
Brian Anderson
e9ddfbe3fd rustdoc: Ignore nil-typed return values 2012-01-18 21:50:35 -08:00
Brian Anderson
a02a943cec rustdoc: Write markdown for mod description 2012-01-18 21:33:37 -08:00
Tim Chevalier
8c97854c7d Allow any alternative (not just a block) to follow a nullary tag pattern 2012-01-18 21:29:02 -08:00
Tim Chevalier
209d8c854f allow dotless nullary patterns inside or-patterns 2012-01-18 21:29:02 -08:00
Tim Chevalier
a453197734 Another minor parser fix for nullary-tag patterns 2012-01-18 21:29:02 -08:00
Tim Chevalier
bf83fd3091 Allow nullary tag names to be qualified 2012-01-18 21:29:02 -08:00
Brian Anderson
3ebf7b42bd rustc: Assert that the parser doesn't assign node id 0
It is reserved for indicating the crate, but doesn't exist in the AST
2012-01-18 19:59:24 -08:00
Brian Anderson
20b8509594 rustdoc: Add mod docs attrs to the doc tree 2012-01-18 19:59:24 -08:00
Brian Anderson
e39e34776e rustdoc: Assign AST ids to mod docs 2012-01-18 19:59:24 -08:00
Brian Anderson
5bbf72e11c rustdoc: Add brief and desc fields to module docs 2012-01-18 19:59:24 -08:00
Brian Anderson
08da893cdb rustdoc: Parse module docs 2012-01-18 19:59:23 -08:00
Elly Jones
eafc9854bd [cargo] argh 2012-01-18 22:52:00 -05:00
Elly Jones
4bd713bb84 [cargo] refactor test_one_crate 2012-01-18 22:36:57 -05:00
Graydon Hoare
1ce288d5aa fix long line 2012-01-18 19:26:19 -08:00
Elly Jones
ad0065fe83 [cargo] add --test flag to install 2012-01-18 22:16:14 -05:00
Graydon Hoare
6a6aec04a2 Fix --out-dir a bit more in driver. 2012-01-18 18:44:07 -08:00
Niko Matsakis
54f6bf57e6 remove align_mode and rewrite GEP_tup_like to align correctly
Although the old version of GEP_tup_like was incorrect in some
cases, I do not believe we ever used it in an incorrect fashion.
In particular, it could go wrong with extended index sequences
like [0, 1, 3], but as near as I can tell we only ever use it
with short sequences like [0, i].
2012-01-18 17:20:46 -08:00
Niko Matsakis
da828747e6 correct use of GEP_tup_like in closure constr
also, streamline type_is_tup_like() to the cases which
actually work
2012-01-18 17:20:46 -08:00
Brian Anderson
2286d8c17e rustdoc: Write argument names as code spans 2012-01-18 17:11:58 -08:00
Brian Anderson
c06e62e0ce rustdoc: Write markdown for argument types 2012-01-18 17:10:04 -08:00
Brian Anderson
6da55efa4e rustdoc: Add argument types to the doc 2012-01-18 17:05:03 -08:00
Brian Anderson
f3fa7c1555 rustdoc: Extract functions from tystr_pass::fold_fn 2012-01-18 16:09:32 -08:00
Brian Anderson
cbd7e8ed1b rustdoc: Prune unconfigured items from AST 2012-01-18 15:48:09 -08:00
Brian Anderson
1b839a61c4 rustdoc: Write markdown for fn arguments 2012-01-18 15:02:43 -08:00
Brian Anderson
29df58d73b rustdoc: Introduce type doc::argdoc 2012-01-18 15:02:43 -08:00
Brian Anderson
38852bf0a4 rustdoc: Extract function argument names from the AST 2012-01-18 15:02:43 -08:00
Brian Anderson
92f63b90f9 rustdoc: Merge the crate's name attribute into the doc tree 2012-01-18 15:02:43 -08:00
Brian Anderson
60b475ea88 rustdoc: Parse crate name from #[link] attr 2012-01-18 15:02:43 -08:00
Brian Anderson
810af2dada rustdoc: Put fn docs inside fn bodies 2012-01-18 15:02:43 -08:00
Brian Anderson
9191911499 rustdoc: Document attr_parser::doc_meta 2012-01-18 15:02:42 -08:00
Patrick Walton
5ac57d1891 test: Don't test that tags with zero variants are supported 2012-01-18 12:43:01 -08:00
Patrick Walton
1aaee20737 rustc: Accept commas to separate tag variants 2012-01-18 12:27:12 -08:00
Haitao Li
7b1724fb40 libstd: Revert an integer type casting
Otherwise, rustctest failed by a segv fault.
2012-01-19 02:24:22 +08:00
Haitao Li
04882d7c43 rustc: Use integer from ctypes consistently 2012-01-19 02:10:36 +08:00
Haitao Li
dde41869ce Use ctypes in native function declarations 2012-01-19 02:10:36 +08:00
Haitao Li
f03eb96f39 rustc: Warn when int or uint is used in a native type decl
Issue #1403
2012-01-19 02:10:36 +08:00
Brian Anderson
2d85e8f59a rustdoc: Improve formatting of return type 2012-01-17 23:53:24 -08:00
Brian Anderson
6c295c0f49 rustdoc: Write a single line between brief and desc 2012-01-17 23:42:26 -08:00
Brian Anderson
c4d2cc4015 rustdoc: Extract various gen functions 2012-01-17 23:39:22 -08:00
Brian Anderson
c17d58d5ba rustdoc: Extract boilerplate from gen tests 2012-01-17 23:33:11 -08:00
Brian Anderson
0142e807dd rustdoc: Write blank lines after brief descriptions 2012-01-17 23:29:23 -08:00
Brian Anderson
971236e8f7 rustdoc: Remove some debug logging 2012-01-17 23:13:24 -08:00
Niko Matsakis
31b25d81eb use 64-bit memset on 64-bit platforms. Fixes #1546. Fixes #843.
Actually, we don't "fix" #843 so much as close it: as with memmove,
we simply use an alignment of 1 with dynamically sized types.
2012-01-17 20:21:09 -08:00
Niko Matsakis
7bc2930cfa roll back commit 1c7a62 2012-01-17 20:21:09 -08:00
Brian Anderson
6e27b27cf8 libstd: Move std tests into libstd 2012-01-17 19:48:58 -08:00
Brian Anderson
17bf4b0e1b libcore: Move core tests into libcore 2012-01-17 19:41:05 -08:00
Brian Anderson
de4053f473 build: Start running libcore tests 2012-01-17 19:41:05 -08:00
Brian Anderson
8acae671c7 rustc: Allow std to be built as a test runner 2012-01-17 19:41:05 -08:00
Brian Anderson
e23e45bc6d rustdoc: Add rustdocs 2012-01-17 17:45:37 -08:00
Brian Anderson
5fbadd24ec rustdoc: Cleanup 2012-01-17 17:45:37 -08:00
Graydon Hoare
80c7bfb069 Rename some readmes and fix some dist logic. 2012-01-17 16:50:13 -08:00
Brian Anderson
cf31eca597 rustdoc: Write a blank line after headers 2012-01-17 16:31:26 -08:00
Brian Anderson
637f19965f rustdoc: Convert markdown generation to a pass 2012-01-17 16:31:26 -08:00
Brian Anderson
a6bdaee7f9 rustdoc: Remove iface. Causing random crashes in resolve? 2012-01-17 16:31:26 -08:00
Brian Anderson
c0df13958c Update crates with correct crate_type attribute 2012-01-17 15:13:43 -08:00
Brian Anderson
47b9fc278e rustc: --test overrides the crate_type attribute 2012-01-17 15:13:43 -08:00
Brian Anderson
b4fc99e09e dist: Add bin directory to system PATH in win32 installer 2012-01-17 14:07:17 -08:00
Graydon Hoare
92671d6a30 Python! 2012-01-17 12:54:23 -08:00
Graydon Hoare
2a42092e70 Long line, grumble. 2012-01-17 12:51:31 -08:00
Graydon Hoare
711fc20d88 Merge pull request #1544 from kevina/issue-1393
Minor cleanups to custom discriminator code.
2012-01-17 12:45:09 -08:00
Graydon Hoare
c4553caab3 Merge pull request #1554 from rtanglao/master
rustdocs for box.rs, comm.rs, ctypes.rs, char.rs
2012-01-17 12:44:25 -08:00
Graydon Hoare
65e3c35c8d Merge pull request #1548 from grahame/fix-interrupted-downloads
don't leave files that will not checksum if download is interrupted
2012-01-17 12:43:30 -08:00
Roland Tanglao
93be00f995 Remove un-needed < 2012-01-17 11:56:13 -08:00
Brian Anderson
4ac44492c4 dist: Add the uninstaller to the win32 control panel 2012-01-17 11:36:21 -08:00
Brian Anderson
ac79f6100b libcore: Remove bogus FIXME from core::tuple 2012-01-17 11:20:20 -08:00
Brian Anderson
943fcf6cdf dist: Make the win32 uninstaller work 2012-01-17 11:19:38 -08:00
Lenny222
b19fdcced2 libstd => libcore 2012-01-17 10:51:43 -08:00
Lenny222
106dcf7b92 spin-off rustdocs tuple code to libstd 2012-01-17 10:51:43 -08:00
Niko Matsakis
a83ad1b9e6 encode variant names and have log print them out. 2012-01-17 10:33:28 -08:00
Tim Chevalier
c3bc8fada8 Allow omission of the '.' after nullary tag patterns
This commit allows patterns like:

alt x { some(_) { ... } none { } }

without the '.' after none. The parser suspends judgment about
whether a bare ident is a tag or a new bound variable; instead,
the resolver disambiguates.

This means that any code after resolution that pattern-matches on
patterns needs to call pat_util::normalize_pat, which consults
an environment to do this disambiguation.

In addition, local variables are no longer allowed to shadow
tag names, so this required changing some code (e.g. renaming
variables named "mut", and renaming ast::sub to subtract).

The parser currently accepts patterns with and without the '.'.
Once the compiler and libraries are changed, it will no longer
accept the '.'.
2012-01-17 10:08:16 -08:00
Tim Chevalier
a7bd817017 Fail slightly more gracefully when given an -o filename that doesn't have an extension 2012-01-17 10:08:16 -08:00
Marijn Haverbeke
87418dbc93 Prevent pretty-printer from trying to consume stdin twice
Why this didn't fail on my machine, I don't know.
2012-01-17 17:44:38 +01:00
Marijn Haverbeke
54d5a9846f Try to fix pretty-printer failure
I can't reproduce it on my side, unfortunately.
2012-01-17 17:12:58 +01:00
Marijn Haverbeke
08c16b17e9 Fix --pretty normal, reorganize some code in driver.rs
There is now only one path doing crate expanding and typechecking,
which should make it less likely for the pretty-printing code to be
broken by changes to the compilation pipeline.

Closes #1536
2012-01-17 16:42:49 +01:00
Grahame Bowland
ca8fe6446b don't leave files that will not checksum if download is interrupted 2012-01-17 22:41:11 +08:00
Marijn Haverbeke
1c7a62c93b Use a memset upcall to zero things without static alignment
This fixes issues #843 and #1546. The cost of an upcall is
unfortunate, though. I assume there must be a way to simply manually
compute the pointer or size, using something akin to the formula in
`align_to` in `rust_util.h`. I could not get this to work,
unfortunately.
2012-01-17 14:04:55 +01:00
Marijn Haverbeke
e046360e69 Add an std::md4 module 2012-01-17 12:02:04 +01:00
Brian Anderson
d367cdf1d9 rustdoc: Write headers for modules 2012-01-16 23:10:25 -08:00
Brian Anderson
b8840cbee6 rustdoc: Add a pass to prune undocumented items 2012-01-16 22:50:00 -08:00
Roland Tanglao
315e3ff8dd Forgot to add some spaces before backslashes 2012-01-16 22:41:56 -08:00
Roland Tanglao
e631df3429 add spaces before newlines in rustdocs 2012-01-16 22:24:56 -08:00
Brian Anderson
ba41342279 rustdoc: Add gen::subsection for managing header levels 2012-01-16 22:01:25 -08:00
Brian Anderson
ab86642e35 rustdoc: Don't use by copy in fst/snd to work around segv
Issue #1546
2012-01-16 21:56:21 -08:00
Brian Anderson
27fe23dcaa rustdoc: Refactor header writing a bit 2012-01-16 21:37:29 -08:00
Brian Anderson
bd63c3928e rustc: Move some attribute accessors from rustdoc to rustc 2012-01-16 21:12:36 -08:00
Brian Anderson
4f2ad6b124 rustdoc: Move fst and snd into util mod 2012-01-16 21:12:36 -08:00
Brian Anderson
75dbb0f193 rustdoc: Use attr API in attr_parser 2012-01-16 21:12:36 -08:00
Brian Anderson
29409afe1a rustdoc: Add a fallthrough path to meta_item search in parse_fn 2012-01-16 21:12:35 -08:00
Brian Anderson
cf40b60b5a rustdoc: Begin writting the attribute extracting pass 2012-01-16 21:12:35 -08:00
Brian Anderson
a0ed75bc49 rustdoc: Use the parsing method that supports .rc files 2012-01-16 21:12:35 -08:00
Brian Anderson
645035a715 rustdoc: Convert tystr_pass to use astsrv 2012-01-16 21:12:35 -08:00
Brian Anderson
447f1fd4af rustdoc: Add a pass type and a run_passes function 2012-01-16 21:12:35 -08:00
Brian Anderson
74d4989876 rustdoc: Add extract::from_srv to extract a doc from an astsrv 2012-01-16 21:12:35 -08:00
Brian Anderson
439a28abe0 rustdoc: Add module astsrv to provide access to the (non-sendable) AST 2012-01-16 21:12:35 -08:00
Brian Anderson
d455d46b15 rustdoc: Remove non-attribute related stuff from attr_parser 2012-01-16 21:12:35 -08:00
Brian Anderson
c87b820298 rustdoc: Add attr_pass for extracting attributes 2012-01-16 21:12:35 -08:00
Brian Anderson
b768df4ea3 rustdoc: Remove unused import from extract module 2012-01-16 21:12:35 -08:00
Brian Anderson
22d182acd7 rustdoc: Remove attribute parsing from extract module 2012-01-16 21:12:35 -08:00
Brian Anderson
04294e437b rustdoc: Cleanup 2012-01-16 21:12:35 -08:00
Brian Anderson
6e0bcb5bd0 rustdoc: Eliminate AST usage in gen module 2012-01-16 21:12:34 -08:00
Brian Anderson
c4de718f37 rustdoc: Add tystr_pass module for extracting type strings 2012-01-16 21:12:34 -08:00
Brian Anderson
497814642f rustdoc: Make fold polymorphic on a context type
This will allow it to be instantiated for non-sendable contexts
2012-01-16 21:12:34 -08:00
Brian Anderson
5457b4d3fb rustdoc: Add fold module 2012-01-16 21:12:34 -08:00
Brian Anderson
e77b8db707 rustdoc: Convert fn return type to retdoc record 2012-01-16 21:12:34 -08:00
Brian Anderson
63dcc64275 rustdoc: Change fndoc's arg list to a vec from map 2012-01-16 21:12:34 -08:00
Brian Anderson
b6ad840c18 rustdoc: Make gen module exports explicit 2012-01-16 21:12:34 -08:00
Brian Anderson
5f25804f46 rustdoc: Push imports down into submodules 2012-01-16 21:12:34 -08:00
Kevin Atkinson
bdc8e8d222 Minor cleanups to custom discriminator code.
Mostly updates to the comments and docs from Pull Request #1537.
2012-01-16 21:04:02 -07:00
Roland Tanglao
ca55a4b421 convert comments to rustdocs for box, char, comm and cytpes.rs 2012-01-16 18:34:03 -08:00
Josh Matthews
ea1e360c15 Ensure library file always has a proper suffix. 2012-01-16 13:35:35 -05:00
Josh Matthews
1223bbc4de Make str::replace smarter. 2012-01-16 13:35:35 -05:00
Marijn Haverbeke
b3927d6052 Don't write out type names when hashing types
I hope this is why my patch made things so much slower...
2012-01-16 17:03:51 +01:00
Marijn Haverbeke
d673f76fdf Remove misguided indirect return in trans_closure
Closes #1528
2012-01-16 14:27:41 +01:00
Marijn Haverbeke
936c933fd8 Move emacs mode into tree 2012-01-16 12:44:24 +01:00
Marijn Haverbeke
1375b31c1c Store type names in crate metadata
Improves type error messages referring to external types.

Issue #1507
2012-01-16 12:08:00 +01:00
Marijn Haverbeke
c2fe7b6398 When pretty-printing fn types, leave off arg modes when they are the default
This reduces ++/&& spam in the output to a bare minimum.

Issue #1507
2012-01-16 12:08:00 +01:00
Kevin Atkinson
e1c50c4410 Don't evaluate discriminator value constants when parsing.
Remove disr_val from ast::variant_ and always use ty::variant_info
when the value is needed.  Move what was done during parsing into
other passes, primary typeck.rs.  This move also correctly type checks
the disr. value expression; thus, fixing rustc --pretty=typed when
disr. values are used.
2012-01-16 11:19:33 +01:00
Marijn Haverbeke
96f1eda6d0 Be more careful about pretty-printing literals
Before, literal printing would basically get derailed completely when
a literal was encountered that did not end up being printed. This
caused the strangeness seen in #1532.

Also cleans up pretty-printing of discriminants a little.

Closes #1510
Closes #1532
2012-01-16 11:19:32 +01:00
Kevin Atkinson
2d36a71aee Update pretty printer to print out disr. values.
Partly fixes issue #1510.  "rustc --pretty=typed" fails.
2012-01-16 11:19:32 +01:00
Marijn Haverbeke
13b9a16a7b Properly print u suffix for uint literals
Issue #1532
2012-01-16 11:19:32 +01:00
Brian Anderson
b39154233a rustdoc: Attach the doc writer to the doc extractor 2012-01-16 01:07:42 -08:00
Brian Anderson
a8428a896e rustdoc: Write fn docs 2012-01-16 01:07:42 -08:00
Brian Anderson
d928952191 rustdoc: Write crate name 2012-01-16 01:07:42 -08:00
Brian Anderson
ae584263da rustdoc: Set the crate name in the top module 2012-01-16 01:07:42 -08:00
Brian Anderson
77690baa70 rustdoc: Attach the AST node id to fndocs 2012-01-16 01:07:42 -08:00
Brian Anderson
7a9ba240a0 rustdoc: Rename type rustdoc to gen::ctxt 2012-01-16 01:07:42 -08:00
Brian Anderson
906a7c2174 rustdoc: Move rustdoc type into the gen module 2012-01-16 01:07:42 -08:00
Brian Anderson
237d96512a rustdoc: Wire up the doc extractor to attribute parser 2012-01-16 01:07:42 -08:00
Brian Anderson
763f3c4d5b rustdoc: Add regression tests for existing attr parsing behavior 2012-01-16 01:07:42 -08:00
Brian Anderson
01fedcad77 rustdoc: Change parse_fn to take a vector of attributes 2012-01-16 01:07:42 -08:00
Brian Anderson
d85fa7c8dc rustdoc: Rename parse_compound_fndoc to parse_fn 2012-01-16 01:07:42 -08:00
Brian Anderson
f3c4263635 rustdoc: Move parse_compound_fndoc into mod attr_parser 2012-01-16 01:07:42 -08:00
Brian Anderson
46a662ecb2 rustdoc: Build mod and fn nodes from the AST 2012-01-16 01:07:42 -08:00
Brian Anderson
995c50b69b rustdoc: Add extract module for building doc model from AST 2012-01-16 01:07:41 -08:00
Brian Anderson
555d5aed37 rustdoc: Move markdown-writing functions into gen module 2012-01-16 01:07:41 -08:00
Brian Anderson
140fbd3019 rustdoc: Move document model into doc module 2012-01-16 01:07:41 -08:00
Brian Anderson
e32cf827ff rustdoc: Add cratedoc and moddoc types 2012-01-16 01:07:41 -08:00
Brian Anderson
c59a0ec774 rustdoc: Move parse module to its own file 2012-01-16 01:07:41 -08:00
Brian Anderson
377316d8f6 rustdoc: Add parse::from_str for testing purposes 2012-01-16 01:07:41 -08:00
Brian Anderson
0e65ddfaea rustdoc: Move AST parsing into the parse module 2012-01-16 01:07:41 -08:00
Jyun-Yan You
e4d553c534 use correct size for logging mod_entry state fields
The compiler outputs 32-bit values for these and on 64-bit FreeBSD
the runtime was scribbling on some state used by getenv and segfaulting.
2012-01-16 00:41:14 -08:00
Jyun-Yan You
79d7388455 add lgamma functions for FreeBSD 2012-01-16 00:38:52 -08:00
Kevin Cantu
d8b0a1910a Added string functions: split_func, split_char, lines, lines_any, words,
and more tests
2012-01-15 20:20:06 -08:00
Brian Anderson
3466c9b4be rustc: Parse fn inner attributes. Closes #1506 2012-01-15 17:48:58 -08:00
Brian Anderson
17585cc47e rustc: Extract comman parts of view parsing 2012-01-15 16:25:31 -08:00
Brian Anderson
16462a77b0 build: Add rustdoc to tidy rules 2012-01-15 14:30:12 -08:00
Brian Anderson
66e97a9b08 rustdoc: Add a crate file 2012-01-15 14:30:12 -08:00
Brian Anderson
6860dcc958 Register snapshots 2012-01-15 13:50:37 -08:00
Brian Anderson
48debac944 Revert "Register snapshots"
This reverts commit 28423bddb1.
2012-01-15 13:45:31 -08:00
Brian Anderson
28423bddb1 Register snapshots 2012-01-15 13:36:10 -08:00
Brian Anderson
7e6ce6637e bench: Lower the default inputs on many shootout benchmarks
Make them run a bit faster during normal testing
2012-01-14 20:34:02 -08:00
Brian Anderson
1588ae204e bench: Update shootout-nbody for style 2012-01-14 20:29:56 -08:00
Brian Anderson
93dcb9fb6b bench: Update fannkuchredux for style 2012-01-14 20:13:03 -08:00
Brian Anderson
9c21673e3f bench: Update shootout-binarytrees for style 2012-01-14 20:13:03 -08:00
Brian Anderson
c53d0a0af8 bench: Update shootout-ackermann for performance 2012-01-14 20:13:01 -08:00
Brian Anderson
492dba8bfe bench: Update shootout-fibo for performance 2012-01-14 19:39:52 -08:00
Brian Anderson
bc77d7bdb0 libcore: Add sys::set_min_stack
Adding this back to the library as a stopgap measure to recover some benchmark
performance. See #1527.
2012-01-14 19:24:33 -08:00
Brian Anderson
b93ed36555 Merge pull request #1521 from grahame/master
Simple update of the vim syntax file
2012-01-14 18:49:58 -08:00
Brian Anderson
c6f62b6374 bench: Update shootout-binarytrees to use unique boxes
Shared boxes have a huge performance overhead due to #1493
2012-01-14 17:02:51 -08:00
Brian Anderson
793e3b231c rustc: Output a note about how to debug unexpected failures 2012-01-14 16:33:33 -08:00
Brian Anderson
cb8eabab3d rustc: Fix tests 2012-01-14 15:14:43 -08:00
Brian Anderson
e36ea8e993 rustc: Run the compiler in a subtask and monitor the diagnostics
Since we are no longer logging to the console it's possible for us to
hit a plain-old-fail statement and not output anything.

This adds a defensive mechanism that will monitor the emitted errors
and compare them to the result of the compiler task. If the compiler
fails without emitting an error it results in an ICE.
2012-01-14 15:14:43 -08:00
Brian Anderson
d9d3be7acc rustc: Extract the logic for generating an ICE message 2012-01-14 15:14:43 -08:00
Brian Anderson
8f57be5bff rustc: Rename mk_codemap_handler to mk_handler 2012-01-14 15:14:43 -08:00
Brian Anderson
77e95dcf9f rustc: Rename emit_diagnostic to emit 2012-01-14 15:14:43 -08:00
Brian Anderson
ff24f7e583 rustc: Use the same diagnostic emmiter for both early errors and the session
This funnels all properly reported errors through a single closure. Yay.
2012-01-14 15:14:43 -08:00
Brian Anderson
9820abfcc7 rustc: Thread a diagnostic::emitter through driver 2012-01-14 15:14:43 -08:00
Brian Anderson
e78b1040e7 rustc: Pull some uses of early_error up into build_target_config 2012-01-14 15:14:43 -08:00
Brian Anderson
876e9fdc06 rustc: Rename diagnostic::diagnostictype to 'level' 2012-01-14 15:14:43 -08:00
Brian Anderson
824beb4c3b rustc: Make it not an error when the source can't be loaded for highlighting
I plan to have a callback mechanism for reporting errors and it gets wierd
when reporting errors while reporting an error.
2012-01-14 15:14:43 -08:00
Brian Anderson
e4849d5e5d rustc: Allow a custom diagnostic emitter when building the handler 2012-01-14 15:14:43 -08:00
Josh Matthews
7cbd90f501 Fix up LLVM type stringification to correspond to Core.h 2012-01-14 18:13:26 -05:00
Brian Anderson
9e40e43e74 build: Build libraries in the bin directory on win32 2012-01-14 13:43:04 -08:00
Grahame Bowland
2b5bd7cd6d Update vim syntax with new keywords 2012-01-14 23:11:33 +08:00
Brian Anderson
84664304cc libcore: Remove void declaration from comm::rustrt 2012-01-14 03:13:41 -08:00
Brian Anderson
d978aace53 libcore: Make ctypes::void an unconstructable, undestructurable tag 2012-01-14 03:13:09 -08:00
Brian Anderson
26551e5481 libstd: Remove util::void 2012-01-14 02:51:08 -08:00
Brian Anderson
a3f5c66484 libstd: Remove util::orb. Redundant with core::bool 2012-01-14 02:48:16 -08:00
Brian Anderson
8f69176a14 Register snapshots 2012-01-14 01:13:56 -08:00
Brian Anderson
dbf6ed9221 rustc: Remove emit_fatal/error/warning/note functions 2012-01-13 22:07:55 -08:00
Brian Anderson
1a6383a0eb rustc: Add a distinct fatal diagnostic level 2012-01-13 22:07:55 -08:00
Brian Anderson
eb41fd9021 Update tools for new parser API 2012-01-13 22:07:55 -08:00
Brian Anderson
478134354d rustc: Rename the lexer's err message to fatal and make it fail 2012-01-13 22:07:55 -08:00
Brian Anderson
f4bd03b998 rustc: Replace the lexer's error handling with diagnostic impl 2012-01-13 22:07:55 -08:00
Brian Anderson
e90701c546 rustc: Replace parser's error handling with diagnostic impl 2012-01-13 22:07:55 -08:00
Brian Anderson
2e69c29660 rustc: Replace session's error handling with diagnostic impl 2012-01-13 22:07:55 -08:00
Brian Anderson
d4e089e94b rustc: Add diagnostic::handler iface and default impl
This is for moving error handling logic out of the session
2012-01-13 22:07:55 -08:00
Brian Anderson
da6674baed rustc: Stop exporting various things from driver::diagnostic 2012-01-13 16:08:59 -08:00
Brian Anderson
ced0aa13d3 rustc: Extract driver::diagnostic from syntax::codemap 2012-01-13 16:06:56 -08:00
Brian Anderson
bb1e8d2339 rustc: Some more codemap refactoring 2012-01-13 15:52:03 -08:00
Brian Anderson
f26266e03d rustc: Refactor codemap::emit_* functions
A codemap is only needed when we have a span so put them both into the option.
2012-01-13 15:52:03 -08:00
Graydon Hoare
91b0a51290 Change builtin macro defs to use #macro() 2012-01-13 15:43:12 -08:00
Graydon Hoare
4f9e1ba80b More doc porting. 2012-01-13 15:43:12 -08:00
Niko Matsakis
4a34a7128a xfail the tests for now, pending #1511 being fixed 2012-01-13 15:30:50 -08:00
Brian Anderson
a2e07a97ba test: xfail-pretty run-pass/tag-disr-val-shape 2012-01-13 15:14:06 -08:00
Brian Anderson
d76362d45e test: Simplify rope::bal1. Closes #1424 2012-01-13 14:55:07 -08:00
Josh Matthews
bdf3a6ba88 Undo over-enthusiastic obj system removal in debuginfo. 2012-01-13 17:28:23 -05:00
Brian Anderson
e66c036c9f libcore: Add task::try 2012-01-13 14:21:17 -08:00
Niko Matsakis
31bb6a60bb Fixes #1499: a test that shape code can walk explicit disr values 2012-01-13 13:57:06 -08:00
Brian Anderson
6c05214ef8 rustc: Turn logging off by default 2012-01-13 13:44:09 -08:00
Brian Anderson
79207321ae libcore: Add core::logging::console_on/off functions
These affect logging output to stdout globally, and turning the console off
has no effect when overridden by RUST_LOG.
2012-01-13 13:44:09 -08:00
Brian Anderson
f5f36e8b49 rt: Allow console logging to be turned off 2012-01-13 13:44:09 -08:00
Marijn Haverbeke
7150643588 Remove workaround for issue #1494
We have a snapshot that includes the fix.
2012-01-13 21:38:29 +01:00
Brian Anderson
bb1e79768c llvm: Switch back to LLVM trunk 2012-01-13 11:05:59 -08:00
Niko Matsakis
8685a1f7c4 distinguish "any closure" and "stack closure" (block) 2012-01-13 09:31:40 -08:00
Niko Matsakis
47a534c197 make blocks fn& and fn stand for "any closure" 2012-01-13 06:36:31 -08:00
Niko Matsakis
3f3bfeec27 make "native fn" the type for bare functions, remove fn exprs 2012-01-13 06:27:35 -08:00
Niko Matsakis
455f8b0d45 deprecate fn exprs and the fn() type, preferring fn@ and native fn 2012-01-13 06:27:34 -08:00
Marijn Haverbeke
d2be5b6c7a Remove tests for objs, adjust tests that use objs 2012-01-13 11:52:13 +01:00
Marijn Haverbeke
24102d50ad Obj system? What obj system?
Removes the obj system from the compiler.

Closes #1484
2012-01-13 11:51:29 +01:00
Marijn Haverbeke
eb07fa4d3b Remove all remaining uses of objs from the compiler 2012-01-13 11:51:17 +01:00
Marijn Haverbeke
7f62944559 Convert the objects used in the lexer and parser to records + impls 2012-01-13 11:50:53 +01:00
Brian Anderson
0616cba62b libcore: Add sys::set_exit_status
Sets the process exit code
2012-01-12 22:24:27 -08:00
Brian Anderson
dcac427795 Revert "build: Build libraries in the bin directory on win32"
This reverts commit 23e0d16b5f.
2012-01-12 20:06:45 -08:00
Brian Anderson
6becf517e3 Revert "Register snapshots"
This reverts commit 17d504e0a9.
2012-01-12 20:06:30 -08:00
Brian Anderson
d95de0dd95 Merge remote-tracking branch 'brson/win32' 2012-01-12 19:25:27 -08:00
Graydon Hoare
fefdb63c4c Begin shift over to using pandoc, markdown and llnextgen for reference manual. Fix man page URL while at it. 2012-01-12 19:10:30 -08:00
Brian Anderson
17d504e0a9 Register snapshots 2012-01-12 17:16:31 -08:00
Tim Chevalier
565ea068ca Add type parameters when checking wildcard patterns
For some reason, wildcard patterns were never getting type parameter
substitutions attached. This would cause an assertion failure when
checking a wildcard pattern that matches against a tag with
polymorphic type (not sure why this didn't come up before). Fixed it.
(The diff and test case may be easier to understand than this note
:P)

Closes #1503.
2012-01-12 16:51:07 -08:00
Brian Anderson
23e0d16b5f build: Build libraries in the bin directory on win32 2012-01-12 13:59:05 -08:00
Niko Matsakis
8818f42b19 make parser disambiguate fn~ at top level correctly 2012-01-12 13:47:38 -08:00
Niko Matsakis
263f4c58a0 add tydescs into shape, rewrite walk_fn_contents() 2012-01-12 13:47:38 -08:00
Niko Matsakis
e55aa6e5ef free uniq data we encounter on the sweep, walk thru them otherwise 2012-01-12 13:47:38 -08:00
Marijn Haverbeke
9d217d9fb0 Register new snapshot (with correct checksum this time) 2012-01-12 21:56:26 +01:00
Marijn Haverbeke
78a9f809b7 Revert "Register new snapshot"
This reverts commit 9faddb6f16.
2012-01-12 20:03:14 +01:00
Marijn Haverbeke
9faddb6f16 Register new snapshot 2012-01-12 19:53:57 +01:00
Marijn Haverbeke
efb9df1ebd Make driver::session::session no longer an object
Rather, it is now a struct where properties like opts are accessed
directly, and the error-reporting methods are part of a static impl
(with the same name as the type).
2012-01-12 18:04:02 +01:00
Marijn Haverbeke
56fe4c2681 Implement passing cast-to-vtable values as bounded params
Closes #1492
2012-01-12 16:57:58 +01:00
Kevin Atkinson
44352df57c Cleanups to previous commits for issue #1393. 2012-01-12 09:55:48 +01:00
Brian Anderson
175196bbb8 libcore: Fix long lines 2012-01-11 22:54:12 -08:00
Roland Tanglao
81c3028699 make rustdocs more terse for bool.rs where it is obvious to programmers as per feedback from graydon 2012-01-11 22:37:25 -08:00
Roland Tanglao
350e87eaae Change doc comments to rustdoc in bool.rs 2012-01-11 22:37:25 -08:00
Brian Anderson
2c70b2fb7e libstd: Remove a bogus link_name attribute 2012-01-11 20:01:55 -08:00
Brian Anderson
35b27aa172 test: Add a test that empty records don't parse
Closes #1200
2012-01-11 19:45:18 -08:00
Brian Anderson
6e1f9ad1f1 rustc: Don't allow empty link_name when nolink attribute is present
Closes #1326
2012-01-11 19:45:18 -08:00
Niko Matsakis
09869cd056 update iface cc code to not walk contents (as with other boxes) 2012-01-11 18:28:09 -08:00
Brian Anderson
70367d757c test: xfail-win32 run-pass/too-much-recursion 2012-01-11 15:10:36 -08:00
Brian Anderson
f921e2e3d1 Revert "build: Build libraries in the bin directory on win32"
This reverts commit c00ec5f9c9.
2012-01-11 14:13:11 -08:00
Brian Anderson
94c389a25b rt: Add RUST_MAX_STACK env var with 8MB default
Closes #1489
2012-01-11 13:57:11 -08:00
Brian Anderson
c00ec5f9c9 build: Build libraries in the bin directory on win32 2012-01-11 13:57:11 -08:00
Marijn Haverbeke
46664c1af2 Properly fix check-fast script 2012-01-11 22:10:43 +01:00
Marijn Haverbeke
8a3d1eeb42 Try to adjust check-fast script to std::io changes 2012-01-11 21:55:55 +01:00
Marijn Haverbeke
4c9c1cd199 Fix dependency bug iface-did-of-impl resolving
By simply not resolving that def id until the typeck pass.

Closes #1494
2012-01-11 21:40:13 +01:00
Marijn Haverbeke
34d7f05292 Major clean-up of std::io
Use ifaces instead of objs, stop wrapping everything in two (or three)
layers of no-value-added indirection, and remove some of the more
pointless/outdated idioms from the code.
2012-01-11 21:00:11 +01:00
Marijn Haverbeke
807592e99f Switch run_program over to ifaces 2012-01-11 20:33:44 +01:00
Marijn Haverbeke
4f76db43e6 Convert std::sha1 and std::rand over to ifaces 2012-01-11 20:33:44 +01:00
Marijn Haverbeke
26610dbbc8 Convert std::deque over to an iface 2012-01-11 20:33:44 +01:00
Marijn Haverbeke
15744210e7 Implement std::map as an iface/impl instead of an obj 2012-01-11 20:33:44 +01:00
Niko Matsakis
c68345e57e add a log_str() function and allow '%?' in fmt strings to use it 2012-01-11 10:32:54 -08:00
Niko Matsakis
f3b867fd04 add section on spawn_connected to tutorial and pull test into file 2012-01-11 09:49:21 -08:00
Marijn Haverbeke
e0cf550527 Register new snapshot 2012-01-11 18:16:26 +01:00
Marijn Haverbeke
f2352f4062 Fix regression in resolving of external impls 2012-01-11 17:12:11 +01:00
Marijn Haverbeke
87253cf3a9 Revert some iface shape code, fix a few more things in it
We can now run the compiler with an iface-based hashtable
implementation.
2012-01-11 11:46:44 +01:00