about summary refs log tree commit diff
path: root/src/comp
AgeCommit message (Collapse)AuthorLines
2011-12-07Inject the view_items for core in the right place, add comment documenting ↵Graydon Hoare-5/+10
why the wrong place was wrong.
2011-12-07Remove stmt_crate_directive, it's vestigial and confusing.Graydon Hoare-37/+2
2011-12-07Check for literals that are out of range for their typeMarijn Haverbeke-1/+36
2011-12-07Change literal representation to not truncateMarijn Haverbeke-650/+410
Also shuffles around the organization of numeric literals and types, separating by int/uint/float instead of machine-vs-non-machine types. This simplifies some code. Closes #974 Closes #1252
2011-12-07repair more hash functionsNiko Matsakis-16/+16
2011-12-07Disallow binding by-mut-ref and by-move argumentsMarijn Haverbeke-0/+31
Fix bug in bound by-copy arguments. Closes #1261
2011-12-07Make typestate properly descend pattern guardsMarijn Haverbeke-0/+10
Closes #1265
2011-12-06fix hash function: + binds tighter than <<Niko Matsakis-1/+4
2011-12-06do not stringify AST nodes unless emitting commentsNiko Matsakis-2/+6
2011-12-06rt: Various tweaks to make __morestack unwinding work on linuxBrian Anderson-2/+9
When unwinding through __morestack the stack limit in the TLS is invalidated and must be reset. Instead of actually landing at __morestack we're just going to make all our Rust landing pads call upcall_reset_stack_limit, which will find the stack segment that corresponds to the current stack pointer and put the limit in the TLS. Also massively expand the stack segment red zone to make more room for the dynamic linker. Will fix in the future.
2011-12-06Add --no-core option and inject a use core/import core::* pair into crate ↵Graydon Hoare-0/+33
unless it's given.
2011-12-06Fix next-node-id "hackasaurus" in comp/front/test.rs.Graydon Hoare-37/+25
2011-12-06Rename --noverify flag to --no-verify.Graydon Hoare-3/+3
2011-12-05rustc: Remove whitespaceBrian Anderson-1/+1
2011-12-05rustc: Add suffix ".rc" to LLVM module identifierHaitao Li-1/+12
LLVM code generator emits the ".file filename" directive for ELF backends. Value of the "filename" is set as the LLVM module identifier. Due to a LLVM MC bug[1], LLVM crashes if the module identifer is same as other symbols such as a function name in the module. This patch adds a ".rc" suffix (means crates) to LLVM module identifier to workaround the bug. Fixes issue #1251. 1. http://llvm.org/bugs/show_bug.cgi?id=11479
2011-12-05typeck: Fix for #932Stefan Plantikow-0/+14
2011-12-04Upgrade LLVM to svn revision 145779Brian Anderson-10/+8
This pulls in commits 145765 & 145766, which are required for split stacks.
2011-12-05rustc: Fix memory leak in do-while loopHaitao Li-2/+5
Issue #1257
2011-12-02const_check: trans: added support for trivial castsStefan Plantikow-0/+11
Part of #1215
2011-12-02parse: typeck: enabling trivial casts of tail-call return valuesStefan Plantikow-14/+33
introduces ctypes::m_* machine type aliases for int, uint, float depending on cfg(target_arch) that are used in tests
2011-12-02ty: trans: added support for dropping trivial castsStefan Plantikow-5/+33
2011-12-02ty: added type comparison that subs prim types with targ_cfg machine typesStefan Plantikow-0/+37
2011-12-02Include full module path in unresolved errors when looking in moduleMarijn Haverbeke-28/+61
Closes #1228
2011-12-02Make import ignore imports coming after themMarijn Haverbeke-14/+54
This broke no code at all, so I guess people were already writing imports in this style. Issue #1228
2011-12-02Finally make the -1 crate id in resolve.rs a constMarijn Haverbeke-10/+7
2011-12-02Stop lexing -1 as a single tokenMarijn Haverbeke-62/+3
And remove the hack that made 1-1 work given that other hack. Issue #954
2011-12-02Allow literal patterns to contain arbitrary literal expressionsMarijn Haverbeke-128/+175
This removes the need for the unary minus hacks, and allows some other neat things like matching on 1 >> 4. Issue #954
2011-12-01Fix mistake in last use passMarijn Haverbeke-5/+12
Closes #1243
2011-11-30Box ast::path valuesMarijn Haverbeke-103/+102
It seems inefficient to copy them around. Let's measure whether that's actually > the case
2011-11-29fix bug in shape concerning size of tag variantNiko Matsakis-7/+16
2011-11-28rustc: Link in libmorestack.a when --stack-growthBrian Anderson-0/+5
2011-11-25rustc: Fall back to intrinsics.ll if we can't parse the bcBrian Anderson-4/+45
This will allow us to transition to the new bitcode format.
2011-11-24rustc: Fix a bug in cdir attribute parsingBrian Anderson-0/+2
The first attribute of the first mod was being applied to every mod.
2011-11-24rustc: Add a path attribute for crate directivesHaitao Li-24/+26
The path information was an optional "filename" component of crate directive AST. It is now replaced by an attribute with metadata named "path". With this commit, a directive mod foo = "foo.rs"; should be written as: #[path = "foo.rs"] mod foo; Closes issue #906.
2011-11-24rustc: Accepts `path` attributes for crate directivesHaitao Li-1/+3
Temporarily allow path specified in either as attribute or in AST, like: #[path = "mymod.rs"] mod mymod = "mymod.rs"; This is a transitional commit to avoid creating a stage1 snapshot.
2011-11-24rustc: Fix position of diagnostic highlight linesHaitao Li-1/+1
Diagnostic highlight lines are incorrect placed when the related line number is 10, 100, etc. The root cause is line number are treated as 0 based (should be 1 based) when calculating offset of line number digits.
2011-11-23Add some changes that *should* have been in e98286b594Marijn Haverbeke-4/+5
Forgot to amend the commit after fixing the failure.
2011-11-23Allow import directives in any blockMarijn Haverbeke-82/+102
Closes #49
2011-11-23Make type_kind properly recognize ty_ptr as sendableMarijn Haverbeke-3/+3
2011-11-23Rollback return-by-referenceMarijn Haverbeke-268/+49
It's proving too inflexible, so I'm ripping out the extra complexity in the hope that regions will, at some point, provide something similar. Closes #918
2011-11-23Remove deep scope traversal in revoke_cleanMarijn Haverbeke-8/+2
It is not needed anymore.
2011-11-23Remove last traces of auth keywordMarijn Haverbeke-23/+0
The reference now has an empty hole where the auth keyword used to be. Changing the keyword table seems to require manually sorting the keywords and putting them back into some kind of arcane interleaved order. I'll open an issue to actually fix this. Closes #1211
2011-11-22rustc: Allow trailing comma in record fieldsHaitao Li-30/+50
2011-11-22comp: allowed the declaration of pure fn's in native modsStefan Plantikow-0/+4
This is especially useful for the native calls in std::math This commit does NOT yet point to new snapshots
2011-11-22Add hacks to extract and compile tutorial codeMarijn Haverbeke-10/+0
Not included in the build by default, since it's fragile and kludgy. Do something like this to run it: cd doc/tutorial RUSTC=../../build/stage2/bin/rustc bash test.sh Closes #1143
2011-11-22Properly check for copies when constructing a record using withMarijn Haverbeke-1/+16
Closes #989
2011-11-22Make type_needs_drop accurate, get rid of type_has_pointersMarijn Haverbeke-47/+24
Closes #1209
2011-11-22Fix inconsistency in ordering of patterns during alt compilationMarijn Haverbeke-17/+12
Closes #1153
2011-11-22Only warn about unreachable range patterns when appropriateMarijn Haverbeke-222/+56
Also simplifies the literal-munging, and moves it into ast_util Closes #1170
2011-11-22Make ast::visit only descend into types when necessaryMarijn Haverbeke-7/+15
If visit_ty is not overridden, it uses a stub function which does not descend into types. Closes #1204