aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* rustboot: Emit an error instead of asserting in trans when a T is passed by ↵Patrick Walton2010-10-282-2/+21
| | | | value
* Merge branch 'gcc-4.5.1' of http://github.com/rillian/rustPatrick Walton2010-10-281-1/+1
|\
| * 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
* Use "friendly" type names when reporting a "mismatched type-params" errorPatrick Walton2010-10-212-88/+79
|
* oops, removed bits.test() from mainDave Herman2010-10-211-4/+0
|
* tests and bugfixes: fns take aliases, fixed binary arithmetic in create, ↵Dave Herman2010-10-212-29/+322
| | | | eliminated wasted bit per uint
* simpler computation of uint_bits(), plus whitespace policeDave Herman2010-10-201-13/+2
|
* Move the "friendly" type printer to semantPatrick Walton2010-10-202-87/+85
|
* created a first draft of the bit-set library needed for typestateDave Herman2010-10-202-0/+186
|
* Eliminate <tag#> stuff from the "friendly" type errorsPatrick Walton2010-10-201-0/+33
|
* Print better error messages when the number of type params is wrongPatrick Walton2010-10-201-1/+6
|
* Add a virtual destructor to rust_thread in sync.h, to quiet the compilerPatrick Walton2010-10-201-0/+2
|
* Translate lazy && and || operators in rustc.Graydon Hoare2010-10-191-7/+58
|
* Parse and translate assignments.Graydon Hoare2010-10-192-18/+50
|