about summary refs log tree commit diff
path: root/src/comp
AgeCommit message (Collapse)AuthorLines
2011-06-30Use attributes for conditional compilation in std.rcBrian Anderson-2/+24
2011-06-30Conditionally compile items declared as statements. Issue #489Brian Anderson-1/+30
2011-06-30Get rid of remaining unused variablesTim Chevalier-6/+4
2011-06-30Don't warn about unused for-loop index variablesTim Chevalier-0/+4
2011-06-30Kill unused variablesTim Chevalier-91/+37
2011-06-30Warn for unused variablesTim Chevalier-69/+122
Modify typestate to check for unused variables and emit warnings where relevant. This exposed a (previously harmless) bug in collect_locals where outer functions had bit-vector entries for init constraints for variables declared in their inner nested functions. Fixing that required changing collect_locals to use visit instead of walk -- probably a good thing anyway.
2011-06-30rustc: Use interior vectors for record typesPatrick Walton-27/+24
2011-06-30rustc: Make mk_imm_tup() take an interior vectorPatrick Walton-48/+65
2011-06-30rustc: Use interior vectors for tuple typesPatrick Walton-23/+27
2011-06-30Added a nanosecond timer to time.rs, support for some floating point casts, ↵Eric Holk-1/+16
and a commandline-driven mode for pfib.rs
2011-06-30Add a pass to fold out items that do not belong in the current configurationBrian Anderson-0/+71
The parser needs to parse unconfigured items into the AST so that they can make the round trip back through the pretty printer, but subsequent passes shouldn't care about items not being translated. Running a fold pass after parsing is the lowest-impact way to make this work. The performance seems fine. Issue #489
2011-06-30Add missing item variants to fold_item_underscoreBrian Anderson-0/+3
2011-06-30Add missing expression variants to fold_exprBrian Anderson-0/+15
2011-06-30Fold the crate-level module in front::foldBrian Anderson-1/+2
2011-06-30Move middle::attr to front::attrBrian Anderson-4/+4
2011-06-30Convert the eval::env to an ast::crate_cfgBrian Anderson-4/+19
crate_cfg will replace eval::env as the mechanism for conditional compilation. This is a transitional step so they can both exist together. Issue #489
2011-06-30Introduce a config property to the crate AST nodeBrian Anderson-4/+12
This represents the compilation environment, defined as AST meta_items, Used for driving conditional compilation and will eventually replace the environment used by the parser for the current conditional compilation scheme. Issue #489
2011-06-30Switch rustc's crate metadata to use the link attributeBrian Anderson-4/+5
2011-06-30Support type parameters in resourcesMarijn Haverbeke-66/+151
Some rather dodgy code was added to trans in the process. I'd love to discuss it with someone who knows more about types during translation.
2011-06-30Make calling resource destructors work cross-crateMarijn Haverbeke-29/+60
Tydescs are currently re-created for each compilation unit (and I guess for structural types, they have to be, though the duplication still bothers me). This means a destructor can not be inlined in the drop glue for a resource type, since other crates don't have access to the destructor body. Destructors are now compiled as separate functions with an external symbol that can be looked up in the crate (under the resource type's def_id), and called from the drop glue.
2011-06-30Second try to remove -lssp.Rafael Ávila de Espíndola-5/+2
2011-06-29More fixes to fast-check.Graydon Hoare-2/+10
2011-06-29Re-enable tidy (it was broken) and fix various non-tidy things.Graydon Hoare-10/+15
2011-06-29Be more strategic about linking to rust cratesBrian Anderson-1/+28
Instead of linking directly to the rust crate, try to figure out the location and name of the library from the file name, then call gcc with appropriate -L, -l flags. This will allow dynamic linking to be more forgiving about where it loads the library from at runtime - currently a stage3 compiler can't run correctly from the stage0 directory. Only tested on Linux. Fingers crossed.
2011-06-29Display an error when linking failsBrian Anderson-2/+13
2011-06-29Add session.note methodBrian Anderson-0/+3
2011-06-29session.err shouldn't take a spanBrian Anderson-2/+2
2011-06-29Remove workaround for a compiler bug that, I guess, got fixedTim Chevalier-14/+3
2011-06-29Eliminate the --check-claims compiler flagTim Chevalier-12/+3
The option can only be toggled at runtime now.
2011-06-29Add a runtime flag to enable/disable claims en masseTim Chevalier-6/+17
Now, if the environment variable CHECK_CLAIMS is set, then all claims turn into checks. Otherwise, claims are no-ops.
2011-06-29Correctly locate the crate's version from the link attributeBrian Anderson-1/+1
2011-06-29Write metadata for sythesized name/vers items to the crate's link attrBrian Anderson-1/+83
If the crate doesn't specify it's name or version, the defaults need to be exported in the crate metadata
2011-06-29Encapsulate more crate meta calculationsBrian Anderson-79/+79
2011-06-29Move the calculation of the crate name, vers and cmh to a single functionBrian Anderson-14/+24
2011-06-29Fix resource encoding bugs.Graydon Hoare-2/+4
2011-06-29rustc: Fix a leak that resulted from copying a structural interior type ↵Patrick Walton-12/+5
containing interior vectors. Add a test case.
2011-06-29Revert ""Try" push without -lssp on windows to see what needs it."Rafael Ávila de Espíndola-1/+1
This reverts commit 47b3e087e945a2a8fcfd1179e333746d294c1259.
2011-06-29rustc: Unbreak self assignmentPatrick Walton-6/+13
2011-06-29"Try" push without -lssp on windows to see what needs it.Rafael Ávila de Espíndola-1/+1
2011-06-29Extend visit to use visit_fn to visit fn expressions.Michael Sullivan-11/+12
2011-06-28Replace common::new_seq_hash with an adapter around std::smallintmapBrian Anderson-103/+69
It would be better to either convert ast_map to use smallintmap or make smallintmap and hashmap follow the same interface, but I don't feel up to it just now. Closes #585.
2011-06-28Comments and cleanup.Lindsey Kuper-4/+9
2011-06-28Comments and cleanup.Lindsey Kuper-34/+95
2011-06-28Comments and cleanup.Lindsey Kuper-4/+2
2011-06-28Support attaching attributes to modules via the crate file. Issue #487Brian Anderson-41/+61
2011-06-28rustc: Move duplicate_heap_parts to copy glue; add a test casePatrick Walton-10/+18
2011-06-28Remove outdated commentsTim Chevalier-2/+0
2011-06-28Require that both sides of a swap be lvals.Michael Sullivan-5/+12
2011-06-28Cleanup attribute code. Issue #487Brian Anderson-12/+16
2011-06-28Remove the last traces of the distinction between export / local meta itemsBrian Anderson-30/+0
Issue #487