aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix busted texi from last night.Graydon Hoare2011-04-131-0/+2
|
* typestate_check can now handle expr_block, expr_if, and expr_binaryTim Chevalier2011-04-126-161/+358
| | | | | | | | | | | | | | | | (caveat for the latter: it assumes that binary operations are strict; a TODO is to detect or and and and correctly reflect that they're lazy in the second argument). I had to add an ann field to ast.block, resulting in the usual boilerplate changes. Test cases that currently work (if you uncomment the typestate pass in the driver) (all these are under test/compile-fail): fru-typestate ret-uninit use-uninit use-uninit-2 use-uninit-3
* Finish the majority of statement -> expression rearrangement in manual.Graydon Hoare2011-04-121-350/+411
|
* rustc: Switch to indices for type parametersPatrick Walton2011-04-129-382/+255
|
* rustc: Add "float" as a type to the pretty printerPatrick Walton2011-04-121-0/+1
|
* Further work on typestate. Handles expr_rec and expr_assign now.Tim Chevalier2011-04-128-252/+548
| | | | | | | | | | | | Also changed the ts_ann field on statements to be an ann instead, which explains most of the changes. As well, got rid of the "warning: no type for expression" error by filling in annotations for local decls in typeck (not sure whether this was my fault or not). Finally, in bitv, added a clone() function to copy a bit vector, and fixed is_true, is_false, and to_str to not be nonsense.
* Add LLVMAddLoopIdiomPass.Rafael Ávila de Espíndola2011-04-121-0/+1
|
* Add LLVMAddCorrelatedValuePropagationPass.Rafael Ávila de Espíndola2011-04-121-0/+1
|
* Add LLVMAddScalarReplAggregatesPassSSA.Rafael Ávila de Espíndola2011-04-121-0/+1
|
* Un-XFAIL generic-tag-corruption.rs.Graydon Hoare2011-04-121-2/+0
|
* Make glue always pass-by-alias and rename "scalar_or_boxed" concept to ↵Graydon Hoare2011-04-121-48/+73
| | | | "immediate"
* Tighten up condition on use of opaque_tag, remove blunt hammer of alias ↵Graydon Hoare2011-04-121-5/+20
| | | | arg-casting in trans_args.
* Add LLVMAddEarlyCSEPass to the .def file.Rafael Ávila de Espíndola2011-04-121-0/+1
|
* Enable more optimizations.Rafael Ávila de Espíndola2011-04-122-9/+10
|
* Factor out creation of calls into ExtFmt.RTBrian Anderson2011-04-112-16/+16
|
* Add support for bool, char to extfmt.Brian Anderson2011-04-113-3/+32
| | | | XFAIL syntax-extension-fmt in rustboot.
* Move ExtFmt compile-time functions into their own moduleBrian Anderson2011-04-112-171/+174
|
* Use correct indentation for ExtFmt.rsBrian Anderson2011-04-111-6/+15
|
* Make ExtFmt call its own functions instead of others defined in stdBrian Anderson2011-04-112-6/+15
|
* Move extfmt parsing into standard libraryBrian Anderson2011-04-112-210/+214
|
* Move the extfmt data model into the standard library.Brian Anderson2011-04-113-48/+78
|
* rustc: Add a uint hash functionPatrick Walton2011-04-111-0/+8
|
* rustc: Factor out expr_ty() into expr_ann() and expr_ty()Patrick Walton2011-04-111-38/+45
|
* Add new minimal testcase showing generic tag memory corruption.Graydon Hoare2011-04-111-0/+6
|
* Add a hack to force the linker to fetch Object.oRafael Ávila de Espíndola2011-04-111-0/+2
|
* Implement the "attempted dynamic environment-capture" error in rustc.Rafael Ávila de Espíndola2011-04-115-0/+151
|
* Try to fix the windows build.Rafael Ávila de Espíndola2011-04-111-0/+3
|
* Make sure RustWrapper.cpp is linked in.Rafael Ávila de Espíndola2011-04-111-16/+20
|
* Un-XFAIL expr-block-fn.rsBrian Anderson2011-04-101-1/+0
| | | | It mysteriously works now.
* rustc: Push down types for all expressions; add logic for recv and sendPatrick Walton2011-04-082-2/+26
|
* Remove silly legacy glue-offset encoding, predicate runtime adjustments by ↵Graydon Hoare2011-04-093-54/+38
| | | | ABI. LLVM should inline most glue now.
* Actually disable optimize in --disable-optimize case, duh.Graydon Hoare2011-04-081-1/+2
|
* Fix codemap.lookup_posMarijn Haverbeke2011-04-091-15/+12
| | | | | Previously, it would place every single location in the first file of the crate that was parsed.
* rustc: Rename "demand" to "pushdown" in the typechecker and explain more ↵Patrick Walton2011-04-081-376/+409
| | | | clearly what it's for
* Move to single-uint file-position representation.Marijn Haverbeke2011-04-0911-351/+413
| | | | | | | | This makes passing them around cheaper. There is now a table (see front/codemap.rs) that is needed to transform such an uint into an actual filename/line/col location. Also cleans up the span building in the parser a bit.
* Make lexer buffer the whole fileMarijn Haverbeke2011-04-092-59/+74
| | | | | This way, it won't have to go through a bunch of calls for each byte fetched.
* Add support for --disable-optimizeGraydon Hoare2011-04-082-1/+6
|
* rustc: Resolve ty_localsPatrick Walton2011-04-081-3/+32
|
* rustc: Add the ability to fold over annotationsPatrick Walton2011-04-081-36/+83
|
* Remove unused function.Rafael Ávila de Espíndola2011-04-081-17/+0
|
* Remove unused function.Rafael Ávila de Espíndola2011-04-081-12/+0
|
* Link with -lm now that it is not included with --whole-archive whenRafael Ávila de Espíndola2011-04-081-3/+3
| | | | building rustllvm.
* Gold is more strict about --whole-archive and will report duplicatedRafael Ávila de Espíndola2011-04-081-4/+13
| | | | | | | | symbols because of an Object.o in a .a and one outside. A similar problem happens for the non-shared part of libpthread. This patch moves the -whole-archive/-no-whole-archive to include just the llvm libs.
* fix long linesTim Chevalier2011-04-081-36/+30
|
* Implemented computing prestates and poststates for a few expression forms.Tim Chevalier2011-04-085-64/+268
| | | | | The typestate checker (if it's uncommented) now correctly rejects a trivial example program that has an uninitialized variable.
* Disable effect checking in rustbootMarijn Haverbeke2011-04-087-55/+5
|
* Avoid some gotchas with logging macrosBrian Anderson2011-04-072-15/+25
| | | | | I think this is sufficient to eliminate multiple evaluation and the possibility of accidental miscompilation from the logging macros.
* Add a test case for calling generic functions taking alias args with box typesBrian Anderson2011-04-071-0/+13
|
* Add an XFAILed test for blocks that result in functionsBrian Anderson2011-04-071-0/+15
|
* Make block results work for generic typesBrian Anderson2011-04-0710-54/+191
| | | | | | | I think just about every type can be used as a block result now. There's quite a proliferation of tests here, but they all test slightly different things and some are split out to remain XFAILed. The tests of generic vectors are still XFAILed because generic aliased boxes still don't work in general.