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