Commit Graph

6912 Commits

Author SHA1 Message Date
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