| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2011-10-21 | Be more careful when parsing block calls | Marijn Haverbeke | -1/+2 | |
| Previously, the parser would try to interpret this as a block call: if true {} // No semicolon {|i, am, a, block|}; Which, though unlikely, might come up in practice. | ||||
| 2011-10-21 | Change the way block calls are parsed, mark them as block-calls. | Marijn Haverbeke | -17/+18 | |
| 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-21 | Drop support for iter, put, and for-each | Marijn Haverbeke | -36/+11 | |
| Closes #1056 | ||||
| 2011-10-21 | Support Ruby-style block argument syntax | Marijn Haverbeke | -12/+21 | |
| Issue #1054 | ||||
| 2011-10-20 | Remove temporary fn# syntax | Brian Anderson | -15/+4 | |
| 2011-10-20 | Don't allow fn@ items | Brian Anderson | -3/+0 | |
| fn@ is intended to be caputring but isn't implemented. | ||||
| 2011-10-20 | Merge ast::proto_shared and ast::proto_closure | Brian Anderson | -5/+6 | |
| Now they are both just proto_shared and proto_shared takes an argument indicating that it is sugared as 'lambda' | ||||
| 2011-10-20 | Rename ast::proto_fn to ast::proto_shared | Brian Anderson | -4/+4 | |
| 2011-10-20 | Make fn denote a bare function. Convert fn to fn@ as needed | Brian Anderson | -10/+12 | |
| 2011-10-20 | Parse obj methods as proto_bare | Brian Anderson | -10/+8 | |
| I don't know if this is the right thing to do, but it works and it lets 'fn' always mean proto_bare | ||||
| 2011-10-20 | Split parsing of fn proto between types, items and anons | Brian Anderson | -6/+30 | |
| The meaning of various fn incantations is going to get temporarily confusing | ||||
| 2011-10-19 | Fail nicer when the parser doesn't find an expected string literal | Brian Anderson | -2/+4 | |
| Closes #1028 | ||||
| 2011-10-18 | Introduce fn@ as a synonym for fn | Brian Anderson | -0/+3 | |
| 2011-10-12 | make native functions markable as unsafe and incorporate that | Niko Matsakis | -4/+7 | |
| into the type check | ||||
| 2011-10-12 | make treatment of unchecked/unsafe blocks more uniform | Niko Matsakis | -4/+6 | |
| also repair various errors in the parser related to such blocks. rename checked_blk to default_blk to reflect the fact that it inherits its purity from the surrounding context. | ||||
| 2011-10-12 | Add unsafe blocks, unsafe functions, and two rudimentary tests | Niko Matsakis | -1/+2 | |
| related to them | ||||
| 2011-10-12 | Extend the unchecked block stuff to allow unsafe blocks as well. | Niko Matsakis | -11/+22 | |
| 2011-10-12 | expand purity to include unsafe | Niko Matsakis | -0/+5 | |
| 2011-10-11 | Introduce ast::proto_bare | Brian Anderson | -1/+1 | |
| Issue #1022 | ||||
| 2011-10-11 | Add a temporary syntax for bare functions | Brian Anderson | -8/+22 | |
| Bare functions will be represented as 'fn#' until they're implemented. Then we'll switch it over to just 'fn'. Issue #1022 | ||||
| 2011-10-07 | Make 1-1 parse again | Marijn Haverbeke | -34/+76 | |
| Issue #954 This is not a very elegant fix -- we should probably do something with constant folding to handle negative-int alt patterns in the future. | ||||
| 2011-10-07 | Parse and typecheck by-value and by-ref arg specs | Marijn Haverbeke | -12/+7 | |
| Add sprinkle && throughout the compiler to make it typecheck again. Issue #1008 | ||||
| 2011-10-06 | Ignore && and + before argument names. | Marijn Haverbeke | -1/+7 | |
| Issue #1008 | ||||
| 2011-10-03 | rustc: Implement C stack stdcall | Patrick Walton | -0/+2 | |
| 2011-09-28 | rustc: Add a new "C stack cdecl" native ABI | Patrick Walton | -1/+5 | |
| 2011-09-28 | Revert "Revert "Implement pattern ranges for all numeric types."" | Brian Anderson | -2/+8 | |
| This reverts commit a034f87146e60e1db2327c6f6807c47406a1bb0b. Conflicts: src/comp/middle/check_alt.rs src/comp/middle/trans_alt.rs src/comp/syntax/ast.rs src/comp/syntax/ast_util.rs src/comp/syntax/fold.rs src/comp/syntax/print/pprust.rs Conflicts: src/comp/middle/trans_alt.rs | ||||
| 2011-09-27 | Patch to error instead of crashing when parsing unmatched double quotes | Wade Mealing | -0/+7 | |
| Patch to error and fail instead of using all available memory then crashing to detect the error condition of an unmatched double quote before the end of a file. I couldn't get it to show nice error messages, so this may not be the ideal fix. A test case for this situation has also been added. | ||||
| 2011-09-24 | Vectors containing pinned kinds become pinned | Brian Anderson | -8/+10 | |
| Otherwise they could be copied | ||||
| 2011-09-23 | Begin to support pattern matching on unique boxes | Brian Anderson | -0/+6 | |
| Issue #409 | ||||
| 2011-09-23 | Remove backward-compatible support for 'mutable' before type. | Marijn Haverbeke | -8/+0 | |
| Closes #966 | ||||
| 2011-09-21 | Revert "Implement pattern ranges for all numeric types." | Marijn Haverbeke | -8/+2 | |
| This reverts commit ce0f054f9d56df4e60291fc2e1b89ce979cf374f. | ||||
| 2011-09-21 | Implement pattern ranges for all numeric types. | Josh Matthews | -2/+8 | |
| 2011-09-20 | Represent unique creation as a unop in the AST instead of its own expr | Brian Anderson | -3/+7 | |
| Like the box unop. Issue #409 | ||||
| 2011-09-20 | Parse unique box types | Brian Anderson | -0/+5 | |
| Issue #409 | ||||
| 2011-09-16 | Require body of else-less if expressions to be a value-less block | Marijn Haverbeke | -6/+10 | |
| For consistency with other constructs that could not possibly return a value (say, loops). | ||||
| 2011-09-16 | Change convention for specifying referenced argument | Marijn Haverbeke | -2/+5 | |
| It is now 1-based, rather than 0 based. (Seems more natural, and allows 0 to be used to refer to self and maybe to closure.) Also allows non-referenced args to be implicitly copied again. Issue #918 | ||||
| 2011-09-15 | Prevent binary expressions from parsing when lhs is non-value block | Marijn Haverbeke | -0/+1 | |
| 2011-09-15 | Require the parameter that will be referenced to be noted | Marijn Haverbeke | -4/+17 | |
| Issue #918 | ||||
| 2011-09-15 | Add representation for by-ref let bindings | Marijn Haverbeke | -4/+6 | |
| Issue #918 | ||||
| 2011-09-15 | Introduce new semicolon rules | Marijn Haverbeke | -71/+44 | |
| - Loop bodies and resource constructors aren't allowed to have trailing expressions anymore. - An expression that ends* in a block without trailing expression can can not be called, indexed, or subscripted. - Only expression-statements that end* in a block without trailing expression can omit their semicolon. *) 'Ending in a trailing expression' is defined as being a block or construct-ending-in-a-block (if, alt) that either ends in an expression itself, or ends in another block-like expression that has a trailing expression (by these same rules). | ||||
| 2011-09-14 | Add syntax and representation for return-by-mutably-rooted-ref | Marijn Haverbeke | -1/+1 | |
| This will be used in the near future to decide what can safely be done with the returned reference. Issue #918 | ||||
| 2011-09-14 | Refactor parse_ret_ty, start parsing by-alias return specs | Marijn Haverbeke | -50/+23 | |
| 2011-09-14 | Rename ast::controlflow to ast::ret_style | Marijn Haverbeke | -7/+12 | |
| It will include information about returning by alias. | ||||
| 2011-09-14 | Add support for negative literals. | Josh Matthews | -6/+25 | |
| 2011-09-13 | Improve lexing of float literals | Marijn Haverbeke | -39/+36 | |
| Closes #575 | ||||
| 2011-09-13 | Be more strict about what constitutes a block expression | Marijn Haverbeke | -6/+35 | |
| Blocks (or statements involving blocks) that end in a semicolon are no longer considered the block-expression of their outer block. This used to be an expression block, but now is a statement block: { if foo { ret 1; } else { ret 10; } } This helps clear up some ambiguities in our grammar. | ||||
| 2011-09-12 | Kill trailing whitespace. | Graydon Hoare | -1/+1 | |
| 2011-09-12 | Factor imports mindlessly. | Graydon Hoare | -33/+13 | |
| 2011-09-12 | Remove backwards-compatibility with old arg-mode syntax | Marijn Haverbeke | -3/+0 | |
| 2011-09-12 | Pretty-print for new arg-mode syntax | Marijn Haverbeke | -22/+31 | |
