Commit Graph

6704 Commits

Author SHA1 Message Date
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
Marijn Haverbeke
0145b15f0c Pass type with params intact as item_type for method callees
This prevents trans_args from optimizing out nil return types. The
method might be generic, in which case it *will* write to a nil retptr.
2012-01-11 11:11:45 +01:00
Niko Matsakis
441a42c5d2 update shape code to handle iface instances 2012-01-10 19:05:28 -08:00
Graydon Hoare
0e334c6839 Fold and re-evaluate expr in tag discriminant. 2012-01-10 15:59:57 -08:00
Kevin Atkinson
1dc3debdaf Add support for casting enum-like tags to scalar values. 2012-01-10 15:59:57 -08:00
Kevin Atkinson
08abf8d37f Support explicit discriminant numbers on tag variants.
Addresses issue #1393.

For now disallow disr. values unless all variants use nullary
contractors (i.e. "enum-like").

Disr. values are now encoded in the crate metadata, but only when it
will differ from the inferred value based on the order.
2012-01-10 15:59:57 -08:00
Patrick Walton
d0fe6723fc test: Fix test/pretty/tag-blank-lines.rs for the tag -> enum switch 2012-01-10 16:02:49 -08:00
Patrick Walton
ffdb7f97f8 rustc: Accept "enum" in addition to "tag" 2012-01-10 15:32:39 -08:00
Niko Matsakis
1592de0faf replace lambda with fn@ 2012-01-10 13:31:06 -08:00
Niko Matsakis
8b911587df rename sendfn to fn~, lambda to fn@ 2012-01-10 13:31:06 -08:00