aboutsummaryrefslogtreecommitdiff
path: root/src/boot
Commit message (Collapse)AuthorAgeFilesLines
...
* Test the deque a bit. Give it a get-by-index method. Fix two uncovered ↵Roy Frostig2010-07-282-6/+32
| | | | state-calculation bugs --- one decently, the other with an ugly hack. Bug on the latter coming right up.
* Switch machine-type lexemes to use suffixes. Remove support for foo(bar) as ↵Graydon Hoare2010-07-2711-132/+79
| | | | a cast notation. Closes #129.
* Calm some LLVM indigestion of last change.Graydon Hoare2010-07-271-6/+6
|
* Distill semantics of use-def maps to fewer and more-obvious words.Graydon Hoare2010-07-279-180/+207
| | | | | | | - Remove redundant uses of 'resolve' and 'referent' in semant. - Use defn, defn_id, lval, lval_base more consistently. - Make associated query functions more consistent. - Closes #127.
* Slight shaving on RA, no more optimizing today. It's fast enough for now.Graydon Hoare2010-07-261-8/+9
|
* Fix numerous non-linearities and O(sizeof(crate)) issues in typestate ↵Graydon Hoare2010-07-262-126/+340
| | | | system's dataflow algorithm. No longer substantial in profile.
* Note the typestate dataflow timing. The culprit is revealed.Graydon Hoare2010-07-261-1/+2
|
* Add a cumulative timer count to be sure we're getting everything.Graydon Hoare2010-07-261-3/+6
|
* Change ctxt_crate_main to an Ast.name.Graydon Hoare2010-07-262-8/+7
|
* Do some more iflog-guarding.Graydon Hoare2010-07-262-84/+94
|
* Don't write to NULL after calling C natives returning void.Roy Frostig2010-07-253-6/+13
|
* Another quick fix from jmuizelaar for that "some ocaml versions dont't ↵Graydon Hoare2010-07-231-1/+1
| | | | notice wrong wildcard count in patterns" bug.
* Improve mutability checking. Closes #118.Graydon Hoare2010-07-232-12/+33
|
* Add test for writing-through-uninit bug (reported on IRC by jrmuizel), plus ↵Graydon Hoare2010-07-231-1/+20
| | | | fix in typestate system.
* Stop using project_lval_ty_from_slot for lval_ty; cover residual un-caught ↵Graydon Hoare2010-07-232-15/+19
| | | | cases in type.ml.
* Widen write mutability check to cover all writing stmts.Graydon Hoare2010-07-231-10/+22
|
* Include all lval-writing statements in stmt_is_init calculation, not just ↵Graydon Hoare2010-07-234-15/+15
| | | | "copy-like". Un-XFAIL generic-tag-alt.rs
* Add pretty-printing for alt-tag statements.Graydon Hoare2010-07-231-1/+32
|
* Rename STMT_init_* to STMT_new_*; former name was confusing.Graydon Hoare2010-07-238-120/+108
|
* Notify copy glue of dst-initialization and fix _vec.alloc issues in lib and ↵Roy Frostig2010-07-222-8/+28
| | | | runtime. Closes #109.
* A certain incomplete quantity of wrestling with "INIT" statements that don't ↵Graydon Hoare2010-07-221-28/+76
| | | | actually initialize. Should probably rename them to MAKE. Anyway, WIP, but two steps forward (and one back). More later.
* Re-classify some err / bug cases as unimpl. Ideally rustboot should never ↵Graydon Hoare2010-07-226-11/+14
| | | | produce a backtrace.
* Source FIXME annotations for issue #81 and a correction to STMT_bind fmt.Roy Frostig2010-07-222-2/+5
|
* Add XFAIL'ed test for return-in-iter, call unimpl when we find it. Closes #100.Graydon Hoare2010-07-221-0/+2
|
* Fix mem op= mem bug in trans.ml (via not terribly good fix). Closes #111.Graydon Hoare2010-07-221-1/+8
|
* Fix simple generic type parameters in LLVM.Jeffrey Yasskin2010-07-232-3/+28
|
* Implement tuple access for LLVM.Jeffrey Yasskin2010-07-231-20/+77
| | | | | | | This involved adding an Ast.ty return to trans_lval. I also included the code for record and box access, but their tests don't completely pass yet.
* Make sure debug locations are propagated to every new block created by makingJeffrey Yasskin2010-07-221-19/+47
| | | | | them an argument to new_block. gdb should do a good job of single-stepping LLVM-compiled rust programs by rust line number now.
* Make bound functions have the right typesPatrick Walton2010-07-201-1/+21
|
* Pick off the last LLVM-crasher from mbx's change.Graydon Hoare2010-07-201-1/+4
|
* Adjust llasm, llabi to be aware of changes to rust_task structure. Still not ↵Graydon Hoare2010-07-202-4/+18
| | | | working fully.
* Tidy up handling of unimplemented features. These are expected (if ↵Graydon Hoare2010-07-208-54/+90
| | | | undesirable) sorts of error, we should handle better than "backtrace and exit 2".
* Strip off TY_mutables and TY_constraineds when unboxing values during autoderefPatrick Walton2010-07-191-0/+1
|
* ctxt_auto_deref_lval decides whether to autoderef the entire lval, not its base.Roy Frostig2010-07-191-17/+24
|
* Autoderef objects when passing them as implicit (indirect) arg upon ↵Roy Frostig2010-07-191-2/+11
| | | | vtbl-dispatch. Add testcase and XFAIL it on LLVM. Closes #112.
* Include the statements on the LHS of a binop when desugaring. Closes #117.Patrick Walton2010-07-191-56/+57
|
* Added a message passing system based on lock free queues for inter-thread ↵Michael Bebenita2010-07-191-1/+1
| | | | communication. Channels now buffer on the sending side, and no longer require blocking when sending. Lots of other refactoring and bug fixes.
* Add a test for an obvious-seeming (but not actually legal) kind of cast ↵Graydon Hoare2010-07-191-3/+1
| | | | attempted in issue #115, downgrade bug to an err in type.ml so you get a better message.
* Fix over-optimistic resolution of self-methods within obj scopes. There is ↵Graydon Hoare2010-07-191-5/+1
| | | | no such feature in the language at present. Add test to prevent regression. Closes #114.
* Missing semicolon in type.ml, plus test to catch regression. Closes #113.Graydon Hoare2010-07-191-1/+1
|
* Change the body-fetching GEP in mark_ty to be dynamic. Our box may be ↵Roy Frostig2010-07-191-1/+1
| | | | parametric.
* Fix opeq.rs for LLVM by implementing simple augmented-assignment operators.Jeffrey Yasskin2010-07-202-17/+32
|
* Make the LLVM compiler crash when it hits a source construct it doesn't knowJeffrey Yasskin2010-07-203-17/+40
| | | | what to do with, rather than silently omitting it from the output.
* Teach the LLVM backend to emit line number information.Jeffrey Yasskin2010-07-201-27/+87
| | | | | | This isn't complete: it misses line numbers in certain kinds of block. It's also still tricky to use it on Darwin, where we need to call dsymutil while the .o file is still around in order for gdb to find the debugging symbols.
* Stub an interface to the (as-yet-nonexistent) structural comparison glue in ↵Patrick Walton2010-07-182-24/+99
| | | | trans
* Fix argv.rs under the LLVM compiler.Jeffrey Yasskin2010-07-182-9/+9
| | | | | | The call to rust_start was assuming that all rust main() functions have the same signature, but the compiler doesn't actually canonicalize them. So instead just match the C signature of rust_start, and cast.
* Fix IL translation of pattern-alt to allow a value of mutable/constrained ↵Roy Frostig2010-07-162-6/+7
| | | | type to be the subject of a pattern-alt.
* Ensure that functions that should return a value do; issue 41Patrick Walton2010-07-161-6/+32
|
* Feed the correct return type to the typechecker when typechecking objects, ↵Patrick Walton2010-07-161-14/+24
| | | | and add a testcase.
* More renaming of GEP offsets in abi/trans. This should settle it. Also, ↵Roy Frostig2010-07-162-26/+37
| | | | fix some overenthusiastic renaming in previous commit.