about summary refs log tree commit diff
path: root/src/comp/middle/fn_usage.rs
AgeCommit message (Collapse)AuthorLines
2012-03-02Move src/comp to src/rustcGraydon Hoare-94/+0
2012-02-09Remove some pointless importsMarijn Haverbeke-1/+0
2012-02-06Make ty::t type self-sufficientMarijn Haverbeke-1/+1
It is now no longer needed to have a ty::ctxt to get at the contents of a ty::t. The straight-forward approach of doing this, simply making ty::t a box type, unfortunately killed our compiler performance (~15% slower) through refcounting cost. Thus, this patch now represents ty::t as an unsafe pointer, assuming that the ty::ctxt, which holds these boxes alive, outlives any uses of the ty::t values. In the current compiler this trivially holds, but it is does of course add a new potential pitfall. ty::get takes a ty::t and returns a boxed representation of the type. I've changed calls to ty::struct(X) to do ty::get(X).struct. Type structs are full of vectors, and copying them every time we wanted to access them was a bit of a cost.
2012-01-26Remove ty_native_fnMarijn Haverbeke-2/+1
It was being used as a clumsy synonym of ty_fn.
2012-01-18Remove '.' after nullary tags in patternsTim Chevalier-3/+3
Does what it says on the tin. The next commit will remove support for this syntax.
2012-01-12Make driver::session::session no longer an objectMarijn Haverbeke-0/+1
Rather, it is now a struct where properties like opts are accessed directly, and the error-reporting methods are part of a static impl (with the same name as the type).
2011-12-23Use the same type of record in ty::ty_fn and ty::methodMarijn Haverbeke-1/+1
Removes some more code duplication.
2011-12-22Register new snapshots, purge log_err and log_full in favour of log(...).Graydon Hoare-1/+1
2011-12-22Register snapshots and switch logging over to use of log_full or #error / ↵Graydon Hoare-1/+1
#debug.
2011-12-14restore old functionality for nowNiko Matsakis-7/+25
2011-12-14first attempt, not happy with itNiko Matsakis-25/+7
2011-12-13Copy first batch of material from libstd to libcore.Graydon Hoare-1/+1
2011-11-17remove compile-command from local variable blocksNiko Matsakis-1/+0
2011-11-10Cleanup unused importsHaitao Li-1/+1
2011-10-21Change the way block calls are parsed, mark them as block-calls.Marijn Haverbeke-1/+1
This makes it possible to omit the semicolon after the block, and will cause the pretty-printer to properly print such calls (if pretty-printing of blocks wasn't so broken). Block calls (with the block outside of the parentheses) can now only occur at statement level, and their value can not be used. When calling a block-style function that returns a useful value, the block must be put insde the parentheses. Issue #1054
2011-10-13Remove an unnecessary visitor from rustc::middle::fn_usageBrian Anderson-8/+1
2011-10-13Fix a use of visit in rustc::middle::fn_usageBrian Anderson-1/+1
This was working by just skipping an AST node instead of doing the advertised check. I can't find a test case for it, but this is more correct.
2011-10-13Don't allow the value of generic bare functions to be takenBrian Anderson-5/+36
Issue #1038
2011-10-13Rename rustc::middle::unsafeck to fn_usageBrian Anderson-0/+72
I'm going to add further checks unrelated to unsafe. Issue #1038