summary refs log tree commit diff
path: root/src/comp/metadata/tydecode.rs
AgeCommit message (Collapse)AuthorLines
2012-01-18Remove '.' after nullary tags in patternsTim Chevalier-1/+1
Does what it says on the tin. The next commit will remove support for this syntax.
2012-01-16Store type names in crate metadataMarijn Haverbeke-0/+7
Improves type error messages referring to external types. Issue #1507
2012-01-13distinguish "any closure" and "stack closure" (block)Niko Matsakis-10/+13
2012-01-13Obj system? What obj system?Marijn Haverbeke-18/+0
Removes the obj system from the compiler. Closes #1484
2012-01-10rename sendfn to fn~, lambda to fn@Niko Matsakis-5/+5
2012-01-09Remove proto_sugar and 'lambda' as keyword, commit to fn@.Graydon Hoare-1/+1
2012-01-06rejigger impl to have an opaque closure ptr rather thanNiko Matsakis-1/+8
opaque closure
2012-01-06Disallow variable names that shadow tags in scopeTim Chevalier-5/+5
Now, if you have a tag named "foo", a variable declaration like "let foo..." is illegal. This change makes it possible to eliminate the '.' after a nullary tag pattern in an alt (but I'll be doing that in a future commit) -- as now it's always obvious whether a name refers to a tag or a new declared variable. resolve implements this change -- all the other changes are just to get rid of existing code that declares variables that shadow tag names.
2012-01-05Clean up translating of def_ids in metadata readerMarijn Haverbeke-75/+68
Reduces the amount of closure allocation, and makes the code cleaner.
2012-01-05Switch to new param kind bound syntaxMarijn Haverbeke-1/+1
And remove support for the old syntax
2012-01-05Get external interfaces / impls workingMarijn Haverbeke-13/+12
Issue #1227
2012-01-02Box arrays of parameter boundsMarijn Haverbeke-1/+1
2012-01-02Check that type parameter bounds are interface typesMarijn Haverbeke-4/+11
Issue #1227
2011-12-28Change representation of type params to handle interface boundsMarijn Haverbeke-15/+27
Issue #1227
2011-12-23Check impls methods against the type of their iface.Marijn Haverbeke-1/+1
2011-12-23Use the same type of record in ty::ty_fn and ty::methodMarijn Haverbeke-16/+7
Removes some more code duplication.
2011-12-22Register new snapshots, purge log_err and log_full in favour of log(...).Graydon Hoare-1/+1
2011-12-22Register snapshots and switch logging over to use of log_full or #error / ↵Graydon Hoare-5/+5
#debug.
2011-12-16extend with ty_send_type and ty_opaque_closureNiko Matsakis-0/+2
2011-12-14push changes through to get things compiling, if not running.Niko Matsakis-10/+13
2011-12-13Copy first batch of material from libstd to libcore.Graydon Hoare-2/+2
2011-12-07Change literal representation to not truncateMarijn Haverbeke-10/+10
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-11-30Box ast::path valuesMarijn Haverbeke-7/+7
It seems inefficient to copy them around. Let's measure whether that's actually > the case
2011-11-23Rollback return-by-referenceMarijn Haverbeke-5/+0
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-21rustc: Remove abi from ast::native_modHaitao Li-7/+1
2011-11-18Update stdlib, compiler, and tests to new kind systemMarijn Haverbeke-1/+1
This involved adding 'copy' to more generics than I hoped, but an experiment with making it implicit showed that that way lies madness -- unless enforced, you will not remember to mark functions that don't copy as not requiring copyable kind. Issue #1177
2011-11-18Add a pass-by-copy parameter passing conventionMarijn Haverbeke-1/+2
This is intended to solve the problem of how to pass arguments to constructor functions -- you want to move in rvalues, but not have to explicitly copy stuff that is not an rvalue. The by-copy passing convention will ensure the callee gets its own copy of the value. For rvalues, it'll just pass off the value. For lvalues, it'll make a copy. Issue #1177
2011-11-18Preparation for kind system overhaulMarijn Haverbeke-3/+3
This goes before a snapshot, so that subsequenct patches can make the transition without breaking the build. Disables kind checking pass, makes parser accept both new and old-style kind annotation. Issue #1177
2011-11-17remove compile-command from local variable blocksNiko Matsakis-1/+0
2011-11-10Cleanup unused importsHaitao Li-1/+1
2011-11-09rustc: Rename native_abi_c_stack_cdecl to native_abi_cdeclBrian Anderson-1/+1
2011-11-09rustc: Rename native_abi_c_stack_stdcall to native_abi_stdcallBrian Anderson-1/+1
2011-11-09Remove native "x86stdcall" ABIBrian Anderson-1/+0
2011-11-08Remove native "cdecl" ABIBrian Anderson-1/+0
2011-11-07Remove native "llvm" ABIBrian Anderson-1/+0
2011-11-07Remove native "rust" ABIBrian Anderson-1/+0
2011-10-25Update our code to new type parameter kind syntaxMarijn Haverbeke-1/+1
Closes #1067
2011-10-21Drop support for iter, put, and for-eachMarijn Haverbeke-6/+0
Closes #1056
2011-10-20Merge ast::proto_shared and ast::proto_closureBrian Anderson-1/+2
Now they are both just proto_shared and proto_shared takes an argument indicating that it is sugared as 'lambda'
2011-10-20Rename ast::proto_fn to ast::proto_sharedBrian Anderson-1/+1
2011-10-20Make fn denote a bare function. Convert fn to fn@ as neededBrian Anderson-2/+2
2011-10-20Parse obj methods as proto_bareBrian Anderson-1/+1
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-11Use the correct function type for external bare functionsBrian Anderson-1/+1
Issue #1022
2011-10-11Use a non-ambiguous character for encoding bare functionsBrian Anderson-0/+5
I was using 'R' and that was already used for records. Issue #1022
2011-10-07Parse and typecheck by-value and by-ref arg specsMarijn Haverbeke-8/+7
Add sprinkle && throughout the compiler to make it typecheck again. Issue #1008
2011-10-03rustc: Implement C stack stdcallPatrick Walton-0/+1
2011-09-28rustc: Add a new "C stack cdecl" native ABIPatrick Walton-0/+1
2011-09-22Convert ty::ty_uniq to contain a mutable typeBrian Anderson-1/+1
Issue #409
2011-09-15Require the parameter that will be referenced to be notedMarijn Haverbeke-2/+5
Issue #918
2011-09-14Add syntax and representation for return-by-mutably-rooted-refMarijn Haverbeke-11/+7
This will be used in the near future to decide what can safely be done with the returned reference. Issue #918