about summary refs log tree commit diff
path: root/src/comp/front
AgeCommit message (Collapse)AuthorLines
2011-08-27Convert ast::ident to istr. Issue #855Brian Anderson-21/+23
2011-08-25Support unchecked blocksTim Chevalier-8/+7
This patch supports the syntax unchecked { ... } to disable purity checking within a block. Presumably it will only be used within a declared "pure fn". However, there is no checking that it doesn't occur elsewhere, and it would be harmless for it to do so. I went with Lindsey's suggestion for the syntax, but it's subject to change. This allows you to write code that uses predicates that call arbitrary Rust functions, but you must declare your intentions by wrapping it in an unchecked { ... } block. The test case run-pass/unchecked-predicates.rs demonstrates how to do that.
2011-08-23Add kind-checking for assign-op, copy, ret, be, fail exprs. Fix caught ↵Graydon Hoare-2/+2
kinding-violations in rustc and libstd.
2011-08-22Move functions from syntax::ast to syntax::ast_utilBrian Anderson-19/+22
This leaves syntax::ast just defining the AST, which strikes me as somewhat nicer
2011-08-20ReformatBrian Anderson-64/+56
This changes the indexing syntax from .() to [], the vector syntax from ~[] to [] and the extension syntax from #fmt() to #fmt[]
2011-08-18Rename various things from ivec to vecBrian Anderson-4/+4
2011-08-18Change ast::ty_ivec, ty::ty_ivec to ty_vecBrian Anderson-2/+2
2011-08-18Remove seq_kind from ast::expr_vecBrian Anderson-1/+1
2011-08-18Remove or _-prefix all unused function argumentsMarijn Haverbeke-1/+2
This should make the compilation process a bit less noisy.
2011-08-17Purge vecs from the std::test interfaceBrian Anderson-1/+1
2011-08-16Port the compiler to the expr foo::<T> syntax.Erick Tryzelaar-1/+1
2011-08-16Port the compiler to foo<T> decl syntax.Erick Tryzelaar-2/+2
2011-08-16Port the compiler to the typaram foo<T> syntax.Erick Tryzelaar-10/+10
2011-08-16Rename std::ivec to std::vecBrian Anderson-23/+23
2011-08-16Add and use an ivec interface to std::testBrian Anderson-3/+3
2011-08-15The wonky for...in... whitespace was bothering me. Sorry!Lindsey Kuper-8/+8
2011-08-15Make spans into stacks (to store expansion backtraces).Paul Stansifer-16/+16
2011-08-12Don't rely on binop autoderef in the compiler.Michael Sullivan-1/+1
2011-08-12Remove vecs from std::sortBrian Anderson-1/+1
2011-08-09Port the compiler to the ivec type [T] syntax.Erick Tryzelaar-24/+24
2011-08-05rustc: Add inlineness to the fn decl insteadPatrick Walton-0/+2
2011-08-05Revert "rustc: Introduce the concept of inline to the AST"Patrick Walton-4/+4
This reverts commit 9b9170f9fe2e4701255a5bd0630c203409d8e934.
2011-08-05rustc: Introduce the concept of inline to the ASTPatrick Walton-4/+4
2011-07-27Fix damage done by the pretty-printerMarijn Haverbeke-3/+1
2011-07-27Reformat for new syntaxMarijn Haverbeke-433/+394
2011-07-25Rename the block type to be blk also. Sorry.Michael Sullivan-4/+4
2011-07-14Add a facility for ignoring tests. Issue #428Brian Anderson-8/+31
Adding the #[ignore] attribute will cause the test not to be run, though it will still show up in the list of tests.
2011-07-14The test runner's main returns unit, not int. Issue #428Brian Anderson-1/+1
The appropriate way to indicate failure from main is to fail.
2011-07-14Flag --test implies '--cfg test'. Issue #428Brian Anderson-0/+6
So certain code can be conditionally compiled only when building for testing
2011-07-13Prohibit trailing whitespace under 'tidy' script. Clean up all caught cases.Graydon Hoare-4/+4
2011-07-12rustc: Remove some useless std::vec importsPatrick Walton-1/+0
2011-07-12Simplify the code for generating tests. Issue #428Brian Anderson-17/+10
2011-07-12Log the synthesized __test module. Issue #428Brian Anderson-4/+8
2011-07-12Elide existing main function when building a test runner. Issue #428Brian Anderson-1/+24
This prevents any defined main function from colliding with the one synthesized for the test runner. This is not the best solution since it doesn't compile a function the user defined, but I don't think it's likely to be a problem in the near term.
2011-07-12rustc: Remove exterior vectors from front::attrPatrick Walton-7/+6
2011-07-11Pass command-line args to the test runner. Issue #428Brian Anderson-5/+28
This will let the test runner filter the tests it runs.
2011-07-11rustc: Implement explicit global scope resolution via leading "::"; add a ↵Patrick Walton-3/+6
test case
2011-07-09Generate code to load a crate's tests into the std test runner. Issue #428Brian Anderson-37/+218
2011-07-09Collect functions that look like unit tests. Issue #428Brian Anderson-3/+31
2011-07-09Track the path as we fold over the AST looking for unit tests. Issue #428Brian Anderson-3/+17
2011-07-07rustc: Remove all exterior vectors from the ASTPatrick Walton-9/+7
2011-07-07rustc: Change lots of AST nodes to use interior vectorsPatrick Walton-5/+5
2011-07-06Generate a main fn for test running. Issue #428Brian Anderson-17/+79
2011-07-06rustc: Make meta items into interior vectorsPatrick Walton-24/+20
2011-07-06rustc: Convert attribute in the AST to interior vectorsPatrick Walton-8/+12
2011-07-06Begin adding unit testing infrastructure to the compilerBrian Anderson-0/+44
Add a --test flag and a pass for transforming the AST to generate a test harness. Issue #428
2011-07-06rustc: Revert the conversion to interior vectors due to heap corruptionPatrick Walton-21/+21
2011-07-06Temp commit on the way to making meta_item into an interior vectorPatrick Walton-14/+10
2011-07-06rustc: Convert attribute in the AST to interior vectorsPatrick Walton-8/+12
2011-07-05Change ast::meta_name_value to accept any literal, not just stringBrian Anderson-3/+30
This isn't useful for much of anything yet, since metadata::encoder doesn't know how to handle the non-string variants. Issue #611