Commit graph

6750 commits

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