aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* rustc: Use an extensible annotation field instead of putting option[@ty] ↵Patrick Walton2010-11-034-89/+94
| | | | everywhere
* Support while and do-while loops in rustc.Graydon Hoare2010-11-034-0/+116
|
* Teach rustc lexer about changes to stratum, opacity and effect keywords.Graydon Hoare2010-11-032-5/+21
|
* Code sketch and comment notes on textual crate signatures.Graydon Hoare2010-11-034-0/+244
|
* Shift obj, type, param decls to have strata rather than effects.Graydon Hoare2010-11-027-74/+112
|
* Split out stratum-checking pass, implement more-strict (overly aggressive) ↵Graydon Hoare2010-11-0216-143/+198
| | | | impure-effect checking.
* First pass on splitting stratum and opacity off of effects. WIP.Graydon Hoare2010-11-0240-183/+271
|
* Un-XFAIL self tests on DarwinPatrick Walton2010-10-281-3/+0
|
* Remove debug print message from the makefilePatrick Walton2010-10-281-2/+0
|
* Allow just the bootstrap LLVM backend to be disabled with NO_OCAML_LLVM=1Patrick Walton2010-10-281-13/+40
|
* rustboot: Emit an error instead of asserting in trans when a T is passed by ↵Patrick Walton2010-10-2811-17/+36
| | | | value
* Revert "rustboot: Emit an error instead of asserting in trans when a T is ↵Patrick Walton2010-10-282-21/+2
| | | | | | passed by value" due to test failures This reverts commit ee901858a27bf00c7dd66e7cfecb9dd97029dba8.
* rustboot: Emit an error instead of asserting in trans when a T is passed by ↵Patrick Walton2010-10-282-2/+21
| | | | value
* Cast NULL to uintptr_t when calling rust_task::start().Ralph Giles2010-10-281-1/+1
| | | | | | | | | On gcc 4.5.1 (fedora 14 i686) rust_test_runtime.cpp fails to compile with the following error: rt/test/rust_test_runtime.cpp:57:61: error: passing NULL to non-pointer argument 3 of ‘void rust_task::start(uintptr_t, uintptr_t, uintptr_t, size_t)’ The explicit cast works around the error.
* Emit a sensible error message if one or more of the parameters isn't enough ↵Patrick Walton2010-10-271-4/+9
| | | | context to instantiate a polymorphic function
* rustboot: Emit an error message instead of asserting on a type-param ↵Patrick Walton2010-10-272-6/+10
| | | | mismatch in tag constructors in patterns
* rustboot: For error reporting, map tag IDs to *tag* names, not to tag ↵Patrick Walton2010-10-261-4/+5
| | | | *variant* names
* rustboot: Use a less hacky method to report tag names in error messages, ↵Patrick Walton2010-10-262-36/+10
| | | | which works for resolve errors as well
* Thread a source location though for type error reporting instead of the ↵Patrick Walton2010-10-251-10/+11
| | | | awful "List.hd scopes" hack
* Merge commit '1875a36feecb7dab183a59ead2d0a342f733422e'Patrick Walton2010-10-251-1/+2
|\
| * Prevent Not_found in the unfortunate case when we have to ↵Patrick Walton2010-10-251-1/+2
| | | | | | | | "friendly_stringify" a tag type we haven't yet recorded into cx.ctxt_all_tag_info
* | Long line police.Graydon Hoare2010-10-221-3/+5
| |
* | Pass outptr as in rustboot. Probably need to revisit this ABI. Also ↵Graydon Hoare2010-10-221-5/+18
| | | | | | | | disgusting hack employed. Please remove.
* | Collect all fns first so decl order doesn't matter to translation.Graydon Hoare2010-10-221-13/+41
| |
* | Extremely broken hacked-up incorrect attempt at 'ret'.Graydon Hoare2010-10-222-0/+36
| |
* | More fire-fighting.Graydon Hoare2010-10-221-3/+6
| |
* | Don't use string == in x86.rs, doesn't work.Graydon Hoare2010-10-221-1/+1
| |
* | Merge branch 'master' of github.com:graydon/rustGraydon Hoare2010-10-224-0/+16
|\|
| * rustc: Add an "_" prefix to assembler-generated symbols on MacPatrick Walton2010-10-224-0/+16
| |
* | Attempt to extinguish burning tree.Graydon Hoare2010-10-221-3/+3
|/
* Implement check-exprs, un-xfail 5 rustc tests.Graydon Hoare2010-10-226-3/+64
|
* rustboot: If the user tries to instantiate a non-parametric type with type ↵Patrick Walton2010-10-222-2/+7
| | | | parameters, report the location of the error
* Add makefile bits to run rustc on the testsuite as part of 'make check'. ↵Graydon Hoare2010-10-222-54/+103
| | | | Mostly xfailed.
* Match llvm xfails inside-out, to make life a little less painful.Graydon Hoare2010-10-221-162/+32
|
* Make test targets in Makefile end in -boot.x86 or -boot.llvm when made by ↵Graydon Hoare2010-10-221-31/+34
| | | | rustboot.
* Give rustc the beginnings of an option-processing loop (at least -nowarn, -h ↵Graydon Hoare2010-10-222-11/+99
| | | | and -o).
* Make append take a mutable &. Not even checked at present, tsk tsk.Graydon Hoare2010-10-221-1/+1
|
* Add some filename helpers to os.Graydon Hoare2010-10-223-0/+25
|
* Change vec slice to use uint, add push/pop/shift/unshift.Graydon Hoare2010-10-222-20/+43
|
* Add support for passing args to fns in rustc.Graydon Hoare2010-10-211-18/+49
|
* Support basic function calls in rustc.Graydon Hoare2010-10-211-8/+39
|
* Teach rustc to parse call exprs.Graydon Hoare2010-10-211-0/+13
|
* Fix a typo in the previous commit.Ralph Giles2010-10-211-1/+1
| | | | (cherry picked from commit 11d2af72cf956cc28549cfd280ba40de1645eee7)
* Check the llvm version against a fixed list.Ralph Giles2010-10-211-4/+3
| | | | | | | | 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)
* Also search the bare ocaml standard library path for llvm bindings.Ralph Giles2010-10-211-0/+1
| | | | | | | | | | | 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)
* Update llvm version detection for the 2.8 release.Ralph Giles2010-10-211-9/+22
| | | | | | | | | | | | | | | | | | | | | | 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)
* De-burninate tree.Graydon Hoare2010-10-211-0/+1
|
* eliminated bitv.test, which now lives in test/run-passDave Herman2010-10-211-283/+0
|
* line length police; moved comp.util.bits to std.bitvDave Herman2010-10-214-3/+300
|
* rustboot: Don't use ridiculous type names when describing simple types like ↵Patrick Walton2010-10-212-1/+12
| | | | int and uint