Patrick Walton
e8d170beae
rt: Stub Rust GC metadata printer and Rust GC strategy modules
2011-08-11 21:15:26 -07:00
Brian Anderson
0a22f91c9c
Revert "Add missing functions to rustllvm.def.in"
...
This reverts commit 1bea273974c3c9570f76fd9c4a4a985ca05bd60f.
Looks like this is not actually necessary. Hard to tell since the tinderboxes
are falling behind.
2011-08-11 18:23:21 -07:00
Brian Anderson
5e840182e6
XFAIL do-while-body-fails
...
Doesn't work w/out optimizations
2011-08-11 18:05:39 -07:00
Brian Anderson
1bea273974
Add missing functions to rustllvm.def.in
2011-08-11 17:50:10 -07:00
Tim Chevalier
051b401051
Handle _|_ - typed things in the bodies of do-while loops
...
The resulting code is strange, but perhaps someone else can
fix it. The obvious things, like returning body_res, all resulted
in completely incomprehensible LLVM errors.
Closes #814
2011-08-11 17:23:47 -07:00
Lindsey Kuper
19bbd02049
Fix too-long line.
2011-08-11 16:21:09 -07:00
Lindsey Kuper
133b3d05b4
Update syntax for function arguments; tweak object system examples to
...
make mutable fields work.
2011-08-11 16:19:51 -07:00
Lindsey Kuper
5d0f9d92ff
Fix typo in docs that was causing makeinfo warning.
2011-08-11 16:19:51 -07:00
Lindsey Kuper
f2e22b2e8e
Sanity-check the code examples that appear in the object system docs.
2011-08-11 16:19:51 -07:00
Rafael Ávila de Espíndola
6402b63b4f
Use the new C API for PassManagerBuilder.
2011-08-11 19:09:52 -04:00
Rafael Ávila de Espíndola
4cee063976
Update for llvm api change.
2011-08-11 14:58:30 -07:00
Graydon Hoare
c96f62a29d
Fiddle the comm operators in the docs, add swap and move symbols (no docs yet).
2011-08-11 14:58:01 -07:00
Patrick Walton
5079f51386
rustc: Associate type descriptors with allocas as metadata
2011-08-11 14:35:33 -07:00
Brian Anderson
4b22243416
Un-ignore stdtest::task::test_sleep
...
Works for me.
2011-08-11 10:15:14 -07:00
Brian Anderson
9742148e25
Bring run-pass/spawn-fn up to date and un-XFAIL
2011-08-11 10:15:14 -07:00
Brian Anderson
d4a17caf1e
Bring run-pass/spawn-module-qualified up to date and un-XFAIL
2011-08-11 10:15:14 -07:00
Brian Anderson
832d89db47
Bring run-pass/task-killjoin up to date and un-XFAIL
2011-08-11 10:15:14 -07:00
Brian Anderson
ffd6ee0730
Fill out some of the run-pass/binops tests
...
Un-XFAIL, and just comment out and add a FIXME to the two cases that fail on
linux.
Closes #577 . This still doesn't compare <, >, etc for channels, ports and
tasks, but since they use pointer equality, that's a bit difficult to set up.
2011-08-11 10:15:07 -07:00
Brian Anderson
29ceb41cc3
Update and un-XFAIL run-pass/many.rs
2011-08-11 10:09:02 -07:00
Brian Anderson
4ff6763b60
rustc: Lowercase "main function not found" error
2011-08-11 10:09:02 -07:00
Brian Anderson
0cddcac016
rustc: Use spans in some main typeck errors
2011-08-11 10:09:02 -07:00
Brian Anderson
612fe3d2d6
Add ast_map::node_span function
2011-08-11 10:09:02 -07:00
Brian Anderson
14b3ad194a
Switch a check for main type from an error to an ICE
...
This code path doesn't look possible, so I think it indicates a bug. Also,
make the message lowercase.
2011-08-11 10:09:02 -07:00
Brian Anderson
0f8e58e3ce
Lowercase the "wrong type in main fn" error
2011-08-11 10:09:02 -07:00
Brian Anderson
32438e82b3
Fix the error-pattern in compile-fail/bad-main.rs. Un-XFAIL
...
This is also tested by compile-fail/main-wrong-type.rs but the type signatures
are slightly different, so I guess it's worth holding on to.
2011-08-11 10:09:02 -07:00
Patrick Walton
7b337e3581
rustc: Don't free shared memory when --gc is on
2011-08-10 22:47:18 -07:00
Patrick Walton
a5d5f9ef48
rustc: Add a --gc switch for debugging and experimentation
2011-08-10 22:13:30 -07:00
Michael Sullivan
c5c8258937
Rework check_expr substantially.
...
The bulk of check_expr is now check_expr_with_unifier, which takes an
expected type and a unification function and will perform the
unification on the type it produces. check_expr calls
check_expr_with_unifier with a dummy unifier and a new function,
check_expr_with, takes an expected type and uses the simple unifier.
I think this generally makes thing cleaner, but the purpose for doing
this is to enable type inferred lambda-blocks to be useful by allowing
the argument types to be unified before the body of the lambda is
checked.
2011-08-10 20:18:07 -07:00
Michael Sullivan
67e361a940
Introduce a ty_infer ast node and use it instead of option::t[ty].
...
This actually basically makes things worse, since we get less nice
type system guarentees but it will make doing type inferred blocks a
fair deal less painful. I'm not /really/ happy about this...
2011-08-10 20:18:07 -07:00
Patrick Walton
1e6074ca73
rustc: Mark functions as "rust" GC
2011-08-10 20:12:30 -07:00
Michael Sullivan
43c9fe65bd
Eliminate the last vestiges of init_recv.
2011-08-10 19:21:29 -07:00
Michael Sullivan
00b781e495
Some cleanup in check_expr.
2011-08-10 19:20:00 -07:00
Lindsey Kuper
d2c1fbd218
Stub out docs for anon objs; update existing object system docs.
2011-08-10 19:00:59 -07:00
Patrick Walton
ba7c8f18d4
rustc: Remove unused "trace" upcalls
2011-08-10 18:09:52 -07:00
Patrick Walton
d1494901d0
rustc: Declare GC-related intrinsics
2011-08-10 17:59:33 -07:00
Patrick Walton
19424dfab6
rustc: Add unique pointers to the set of types we support
2011-08-10 17:24:22 -07:00
Tim Chevalier
a8a4d4ec05
Use actual type, not declared type, when zeroing move arguments
...
trans was failing with a bounds check error because the caller
was using the declared type (an out-of-scope ty param) and not
the actual type in a list of argument types to zero.
Closes #811
2011-08-10 17:22:57 -07:00
Graydon Hoare
6b756c4b4a
Update docs to describe kinds rather than layers, remove old terms.
2011-08-10 17:11:24 -07:00
Graydon Hoare
0daa4fb1c4
More decl fixes.
2011-08-10 17:11:24 -07:00
Graydon Hoare
511c053856
Remove dead keywords from parser.
2011-08-10 17:11:24 -07:00
Graydon Hoare
a38a1b6c7a
Fix some more declarations in example code in docs.
2011-08-10 17:11:24 -07:00
Graydon Hoare
1dd9240e56
Update docs regarding path syntax.
2011-08-10 17:11:24 -07:00
Graydon Hoare
2f35f645c3
Update frontmatter.
2011-08-10 17:11:24 -07:00
Lindsey Kuper
bf81a05223
Factor out creation of object body types.
2011-08-10 16:53:32 -07:00
Michael Sullivan
bcc30cb4f6
Rename unify::simple to unify::unify.
2011-08-10 16:43:03 -07:00
Michael Sullivan
7d5092ee7b
Some trivial cleanup.
2011-08-10 16:28:34 -07:00
Graydon Hoare
5b084e4e36
Update docs to new let syntax.
2011-08-10 15:47:11 -07:00
Patrick Walton
347230b001
rt: Add the last few cases to polymorphic log
2011-08-10 15:45:32 -07:00
Patrick Walton
955ac84da4
rt: Step over type params properly in glue
2011-08-10 15:39:05 -07:00
Patrick Walton
15e1e3185d
rt: Allow records and boxes to be logged
2011-08-10 15:36:37 -07:00