Commit Graph

207 Commits

Author SHA1 Message Date
Graydon Hoare
440e637edf Fix boxed returns harder. Un-XFAIL output-slot-variants.rs. 2010-12-08 16:43:59 -08:00
Graydon Hoare
2b36a8eab4 Fix log upcall translation bug. Un-XFAIL rec-auto.rs. 2010-12-08 15:29:09 -08:00
Graydon Hoare
6ccfba34f3 Add missing case to parse_ty, un-XFAIL cast.rs. 2010-12-08 15:04:57 -08:00
Graydon Hoare
68af077e81 Implement binop= forms. Un-XFAIL bitwise.rs. 2010-12-08 14:50:47 -08:00
Graydon Hoare
b971d6312e Fix missing case in resolve, un-XFAIL rec-tup.rs. 2010-12-08 11:52:34 -08:00
Patrick Walton
47f0729d38 rustc: Un-XFAIL test/run-pass/writealias.rs too 2010-12-07 12:40:57 -08:00
Patrick Walton
b5679c844e rustc: Un-XFAIL readalias.rs 2010-12-07 12:38:51 -08:00
Graydon Hoare
fdb3a4e471 Un-XFAIL deref.rs and large-records.rs. 2010-12-06 18:53:16 -08:00
Graydon Hoare
a059b4720c Null slots on missing init, null-check box ptrs on drop. Works around missing typestate pass. Un-XFAIL box-in-tup.rs. 2010-12-06 17:46:44 -08:00
Graydon Hoare
a98b2ebb4a Change 'stratum' to the friendlier term 'layer'. 2010-12-03 12:15:32 -08:00
Graydon Hoare
d922b0ad9c Drop slots on the way out of scopes. Un-XFAIL box.rs. 2010-12-02 19:44:24 -08:00
Graydon Hoare
df5f8f3e37 Add minimal test for box/deref. 2010-12-02 15:02:17 -08:00
Graydon Hoare
de9fc72cb4 Add test for non-exhaustive match failure. 2010-12-02 14:50:00 -08:00
Graydon Hoare
25b973df1b Finish support for typechecking and translating records. Un-XFAIL rec.rs. 2010-11-30 10:39:35 -08:00
Graydon Hoare
7be7c23b6b Copy args to allocas, change llargs lookups to 'in mem'. Un-XFAIL tup.rs. 2010-11-26 17:47:27 -08:00
Patrick Walton
f55f46af64 rustc: Typecheck whiles and do-whiles. Add a workaround to complex.rs pending a solution to the one-armed-if problem. 2010-11-23 17:02:08 -08:00
Patrick Walton
c20ea9e60a rustc: Un-XFAIL compile-fail/arg-type-mismatch.rs. 2010-11-22 17:56:45 -08:00
Graydon Hoare
e05d7c3ac1 Support mach types in rustc, enable 5 more tests. 2010-11-22 17:41:32 -08:00
Patrick Walton
3e01b2d529 rustc: "Expected" and "actual" were swapped. Also un-XFAIL compile-fail/arg-count-mismatch.rs for good measure. 2010-11-22 17:38:23 -08:00
Graydon Hoare
d3cb25d5d1 Check and translate 'as' cast-operator, lower target-specific types, reindent rustc.rs, enable uint test. 2010-11-22 16:27:00 -08:00
Graydon Hoare
c262543d3b Fix type disagreements in lowering typeck.ty to llvm TypeRefs, enable complex.rs test. 2010-11-22 14:28:05 -08:00
Graydon Hoare
ccc21fd4da Fix lexer bug, enable 5 more tests on rustc. 2010-11-22 11:35:00 -08:00
Graydon Hoare
3ba6736383 More typeck hacking, check if and call exprs, enable fact and deep tests. 2010-11-21 12:06:09 -08:00
Graydon Hoare
5955e23343 Typecheck assignment exprs, redo decl checking, propagate ty_vars. Enable another test. 2010-11-21 01:16:16 -08:00
Graydon Hoare
79a3811ab8 Typecheck binary, unary and name expressions. Re-enable 3 more tests. 2010-11-20 23:00:52 -08:00
Graydon Hoare
77670e84de Fix bug in llvm type signature of function items; enable three more tests. 2010-11-20 22:05:17 -08:00
Graydon Hoare
244c59ac20 Clean up typechecker file, disable all tests that fail under typechecker. 2010-11-19 20:46:04 -08:00
Graydon Hoare
3352fab59b Parse type items, nil types, named types. Fix some parser bugs. Enable arith-0 and arith-2 tests. 2010-11-19 16:34:47 -08:00
Graydon Hoare
d311719a75 Enable more now-passing tests for rustc (including function calls). 2010-11-19 11:04:10 -08:00
Graydon Hoare
6cecc93e8d Disable LLVM backend in rustboot; more trouble than it's worth at this point. 2010-11-19 10:45:24 -08:00
Graydon Hoare
16faef2218 Fix buggy while and do-while translation in rustc. Add test. 2010-11-04 07:55:33 -07:00
Graydon Hoare
7db115834f Split out stratum-checking pass, implement more-strict (overly aggressive) impure-effect checking. 2010-11-02 15:24:46 -07:00
Patrick Walton
ccd62969c1 Un-XFAIL self tests on Darwin 2010-10-28 16:07:54 -07:00
Patrick Walton
c2480a3d60 Remove debug print message from the makefile 2010-10-28 16:06:04 -07:00
Patrick Walton
7303b8e115 Allow just the bootstrap LLVM backend to be disabled with NO_OCAML_LLVM=1 2010-10-28 16:03:45 -07:00
Graydon Hoare
a0867e0ccf More fire-fighting. 2010-10-22 17:54:27 -07:00
Graydon Hoare
bd9a8fd57b Attempt to extinguish burning tree. 2010-10-22 17:23:53 -07:00
Graydon Hoare
6d47d2abde Implement check-exprs, un-xfail 5 rustc tests. 2010-10-22 15:37:42 -07:00
Graydon Hoare
6ec402d4a6 Add makefile bits to run rustc on the testsuite as part of 'make check'. Mostly xfailed. 2010-10-22 14:46:03 -07:00
Graydon Hoare
76dc0ae995 Match llvm xfails inside-out, to make life a little less painful. 2010-10-22 13:43:25 -07:00
Graydon Hoare
25263c9576 Make test targets in Makefile end in -boot.x86 or -boot.llvm when made by rustboot. 2010-10-22 12:12:01 -07:00
Ralph Giles
eec259f625 Fix a typo in the previous commit.
(cherry picked from commit 11d2af72cf956cc28549cfd280ba40de1645eee7)
2010-10-21 16:06:47 -07:00
Ralph Giles
6b9a9a7874 Check the llvm version against a fixed list.
This change is thanks to Peter Hull, who independently resolved
the 2.8 vs 2.8svn issue this way. His patch checked the version
string against a fixed set of options, which is easier to read
and simpler to adjust in the future.
(cherry picked from commit 83cc297561a78ad13fcd1c2943f17ace81c725b8)
2010-10-21 16:06:39 -07:00
Ralph Giles
c3879c19c2 Also search the bare ocaml standard library path for llvm bindings.
Ubuntu ships the llvm bindings in /usr/lib/ocaml/llvm/ but Fedora
is installing them directly in /usr/lib/ocaml so we need to check
there as well.

The patch is untested; Fedora 14, the current beta, includes llvm 2.7.
It does add an unnecessary -I directive, but should at least have a
better chance of working on Fedora 15.
(cherry picked from commit 8af7360bd3de851668a133ae6ba4419e3722c6aa)
2010-10-21 16:06:21 -07:00
Ralph Giles
45056fc022 Update llvm version detection for the 2.8 release.
The LLVM project recently released version 2.8, and updated
the SVN tree version to 2.9svn, obsoleting the simple check
for 'llvm-config --version' returning 2.8svn.

With this commit we instead check for the substrings 2.8 and 2.9
in the output of 'llvm-config --version', since we (currently)
support both the svn and released varieties of those versions.

A stable release also complicates our check for the ocaml bindings.
Previously we looked in `llvm-config --libdir`/ocaml which is
appropriate for local compiles, but distribution packagers are
likely to put the bindings in the default search path, e.g.
/usr/lib/ocaml/llvm. We now fall back to trying variations on
the standard library path returned by 'ocamlc -config' if we
don't find it under 'llvm-config --libdir'.

With this change, rust builds against LLVM 2.8 as packaged
in Ubuntu 10.10 as well as LLVM 2.9svn compiled locally.
(cherry picked from commit b606b65756f087c403180abd5418fe7dce469758)
2010-10-21 16:06:15 -07:00
Graydon Hoare
a7599a7968 De-burninate tree. 2010-10-21 15:02:05 -07:00
Graydon Hoare
f234750d80 Fix crasher in rustc. 2010-10-14 12:41:48 -07:00
Graydon Hoare
52c2a1549c Fetch typarams from the outermost item frame, when inside an iter-block. One less crash in rustc. 2010-10-13 15:53:38 -07:00
Patrick Walton
45a61b5191 Don't run tidy inside etc/. Should put out the burning tinderbox. 2010-10-13 15:21:42 -07:00
Graydon Hoare
caaf8679d8 Teach bind to actually bind typarams, as it claims to. 2010-10-10 00:14:26 -07:00