about summary refs log tree commit diff
path: root/src/comp
AgeCommit message (Collapse)AuthorLines
2011-05-27Check the declaration type in a for loop against the sequence typeTim Chevalier-15/+39
Changed the typechecker to correctly typecheck the declared variable type in a for or for-each loop against the vector element type (for a for loop) or the iterator type (for a for-each loop). Added a test case.
2011-05-27add a function that returns the type of a local declTim Chevalier-0/+11
2011-05-27Generating names for wrappers, removed extra loggingEric Holk-35/+5
2011-05-27Switched calling conventions so that spawn with multiple arguments works.Eric Holk-6/+5
2011-05-27Switching over to wrappers for spawning functions of multiple arguments. ↵Eric Holk-43/+115
Doesn't quite work yet.
2011-05-27Removing excessively verbous logging.Eric Holk-37/+0
2011-05-27Programs using spawn terminateEric Holk-0/+17
2011-05-27Working on 2 argument spawn. The arguments seem to be copied correctly once, ↵Eric Holk-3/+1
but then they get lost.
2011-05-27Arguments seem to be correctly passed to child processes now.Eric Holk-10/+13
2011-05-27New tasks run, but their arguments get lost and something ends up in an ↵Eric Holk-2/+6
infinite loop when the task exits.
2011-05-27Use annotations on blocksTim Chevalier-10/+9
Previously, block_ty returned the type of the terminating expression of the block (or nil if said expression was absent). I changed check_expr to write the type of that expression into the annotation for the block itself, so now block_ty can use the block's annotation.
2011-05-27Change the syntax for RECV from "var <- port" to "port |> var".Michael Sullivan-5/+5
2011-05-27Fix missing bump in RECV lexer case.Michael Sullivan-0/+1
2011-05-27Pretty print the new RECV token...Michael Sullivan-0/+1
2011-05-27Remove parser support for recv as an initializer in preparation for changing ↵Michael Sullivan-5/+7
the recv syntax.
2011-05-27Lex '|>' as the RECV token.Michael Sullivan-6/+14
2011-05-26Make _|_ unify with anythingTim Chevalier-12/+9
The typechecker had a number of special cases for unifying types with _|_ (as with checking if and alt). But, a value of type _|_ should be usable in any context, as such a value always diverges, and will never be used by its immediate context. Changed unify accordingly, removed special cases.
2011-05-27Handle circularity in glob imports in a more elegant fashion.Paul Stansifer-75/+87
2011-05-27Add a map from def_id s to items in resolve::env.Paul Stansifer-1/+24
Use it to provide better error messages in the event of glob-importing the same name multiple times.
2011-05-27Fix bugs: make sure glob imports show up in the right module,Paul Stansifer-65/+92
and make sure that circular glob imports don't diverge.
2011-05-27"import module::*;" now works.Paul Stansifer-55/+69
2011-05-27Part one of adding globbing to resolve.rs: build up glob links. (Part two ↵Paul Stansifer-21/+119
will follow those links if non-glob resolution fails.)
2011-05-27Parsing and folding changes for globbed imports.Paul Stansifer-12/+42
2011-05-26Fix typoTim Chevalier-1/+1
2011-05-26More delicious dead code removal from runtime, upcalls.Graydon Hoare-79/+11
2011-05-26Track spans for each local variable in typestateTim Chevalier-103/+161
This lets us print better messages in situations with name shadowing.
2011-05-26Remove unused importsTim Chevalier-6/+1
2011-05-26Add a span_str function in sessionTim Chevalier-4/+12
2011-05-26Fix typo in error messageTim Chevalier-2/+2
2011-05-26Remove redisue of unused fields from 'ann'.Graydon Hoare-52/+6
2011-05-26Remove residual uses of fold, and fold itself.Graydon Hoare-1936/+62
2011-05-26Remove native glues. All calls to C are direct now.Graydon Hoare-261/+5
2011-05-26Add early returns to rustc main on non-compiling paths.Graydon Hoare-0/+2
2011-05-25Pretty print view items with :: rather than :.Graydon Hoare-1/+1
2011-05-25rustc: Fail better when the first argument to #fmt is not a string literalBrian Anderson-2/+3
2011-05-25rustc: Fail when #fmt is given too many argumentsBrian Anderson-1/+9
2011-05-25Produce a useful error message in trans when attempting to log an ↵Michael Sullivan-6/+13
unsupported type. (Previously, an llvm assert was tripped.)
2011-05-25Fixing typechecking for spawn.Eric Holk-1/+3
2011-05-25dead argument removal part one.Rafael Ávila de Espíndola-4/+3
2011-05-24rustc: Downcase typeck::demand and typeck::pushdownBrian Anderson-67/+67
2011-05-24rustc: Use demand functions instead of open-coded typecheck for spawnBrian Anderson-16/+1
Un-xfail spawn-non-nil-fn
2011-05-24Only one gc glue.Rafael Ávila de Espíndola-3/+3
2011-05-24There is only one yield glue.Rafael Ávila de Espíndola-47/+4
2011-05-24Remove dead code for unwind_glue.Rafael Ávila de Espíndola-2/+2
2011-05-24There is only one activate function now.Rafael Ávila de Espíndola-104/+5
2011-05-24Merge pull request #404 from lkuper/cleanupEric Holk-37/+0
Just removing some unnecessary imports.
2011-05-24Stop showing a 'cyclic import' message for unresolved importsMarijn Haverbeke-4/+5
This only happened for single-length import paths, because the import was being looked up in its own scope.
2011-05-24Just removing some unnecessary imports.Lindsey Kuper-37/+0
2011-05-24Improve nonexistent-module error messageTim Chevalier-1/+1
The error message for (for example) "import vec;" without "use std;" was "cyclic import", which was misleading because there were no cycles. I changed it to "cyclic import or nonexistent module", which doesn't break existing tests.
2011-05-23Improve error message for ambiguous polymorphic typesTim Chevalier-0/+5
If a type still contains free type variables after typechecking (for example, as with "auto foo = []", the result was an assertion failure in typeck. Made it a human-readable error message instead.