Brian Anderson
|
f324704c0a
|
Parse obj methods as proto_bare
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-20 18:23:48 -07:00 |
|
Niko Matsakis
|
e8a0e592da
|
reimplement some of the unsafe stuff which got lost
- blocks inherit unsafety
- remove the --check-unsafe flag
- add unsafe annotations where needed to get things to compile
|
2011-10-12 16:33:07 -07:00 |
|
Niko Matsakis
|
d4d7eb069b
|
add unsafe tags into various points in the translation chains
and so forth
|
2011-10-12 16:33:06 -07:00 |
|
Niko Matsakis
|
212707ce84
|
make native functions markable as unsafe and incorporate that
into the type check
|
2011-10-12 14:39:34 -07:00 |
|
Niko Matsakis
|
e9569371f7
|
add 'u' to one other place it was missing
|
2011-10-12 14:26:47 -07:00 |
|
Niko Matsakis
|
f304c1bee5
|
add 'u' to decoder (kinda' important)
|
2011-10-12 14:26:47 -07:00 |
|
Niko Matsakis
|
29584cc5ac
|
Extend the unchecked block stuff to allow unsafe blocks as well.
|
2011-10-12 14:26:47 -07:00 |
|
Brian Anderson
|
55379a97d4
|
Use the correct function type for external bare functions
Issue #1022
|
2011-10-11 15:12:49 -07:00 |
|
Brian Anderson
|
cfa2346086
|
Use a non-ambiguous character for encoding bare functions
I was using 'R' and that was already used for records.
Issue #1022
|
2011-10-11 14:38:15 -07:00 |
|
Brian Anderson
|
b277039325
|
Introduce ast::proto_bare
Issue #1022
|
2011-10-11 10:51:10 -07:00 |
|
Marijn Haverbeke
|
33167f7dec
|
Adjust function signatures to allow for vecs being immediate
Some code was relying on vectors being implicitly by-reference (as
non-immediate value). This adds the necessary &&-sigils.
Closes #1021
|
2011-10-10 16:01:51 +02:00 |
|
Marijn Haverbeke
|
f9fbd86f52
|
Parse and typecheck by-value and by-ref arg specs
Add sprinkle && throughout the compiler to make it typecheck again.
Issue #1008
|
2011-10-07 09:09:50 +02:00 |
|
Brian Anderson
|
1391154b14
|
Use util::filesearch to locate intrinsics.bc and main.o
|
2011-10-04 21:35:06 -07:00 |
|
Brian Anderson
|
ebcc76d68d
|
Move the library search into util::filesearch
|
2011-10-04 21:35:06 -07:00 |
|
Brian Anderson
|
b25e78524c
|
Fix some comment drift
|
2011-10-04 21:35:06 -07:00 |
|
Brian Anderson
|
33ee73102d
|
Remove some redundancy in metadata::creader
|
2011-10-04 21:35:06 -07:00 |
|
Brian Anderson
|
d91b7b61ef
|
Encapsulate current sysroot and lib path handling into util::filesearch
|
2011-10-04 21:35:06 -07:00 |
|
Patrick Walton
|
968b66ad40
|
rustc: Implement C stack stdcall
|
2011-10-03 13:59:38 -07:00 |
|
Patrick Walton
|
7ab0897ac6
|
rustc: Track link_args attributes on C stack cdecl natives as well
|
2011-09-30 14:25:10 -07:00 |
|
Patrick Walton
|
f7d0c1cec3
|
rustc: Add a new "C stack cdecl" native ABI
|
2011-09-28 12:58:33 -07:00 |
|
Brian Anderson
|
856acbf66d
|
Vectors containing pinned kinds become pinned
Otherwise they could be copied
|
2011-09-24 12:36:51 -07:00 |
|
Brian Anderson
|
1b3023e4d0
|
Convert ty::ty_uniq to contain a mutable type
Issue #409
|
2011-09-22 10:26:34 -07:00 |
|
Marijn Haverbeke
|
3abe3671bd
|
Require the parameter that will be referenced to be noted
Issue #918
|
2011-09-15 16:15:17 +02:00 |
|
Marijn Haverbeke
|
7298b8f4ba
|
Insert omitted semicolons for statements
|
2011-09-15 09:49:00 +02:00 |
|
Marijn Haverbeke
|
93de2f0b74
|
Add syntax and representation for return-by-mutably-rooted-ref
This will be used in the near future to decide what can safely
be done with the returned reference.
Issue #918
|
2011-09-14 17:30:38 +02:00 |
|
Marijn Haverbeke
|
51dae63c44
|
Make most of the compiler aware of return-by-reference
tyencode/tydecode still don't know about it. return_ref will be extended to take
arguments anyway.
|
2011-09-14 11:31:05 +02:00 |
|
Marijn Haverbeke
|
6eb9738a66
|
Rename ast::controlflow to ast::ret_style
It will include information about returning by alias.
|
2011-09-14 10:38:23 +02:00 |
|
Graydon Hoare
|
a4815b6742
|
Factor imports mindlessly.
|
2011-09-12 16:13:28 -07:00 |
|
Marijn Haverbeke
|
ca1df2b111
|
Pretty-print for new arg-mode syntax
|
2011-09-12 12:49:00 +02:00 |
|
Marijn Haverbeke
|
fc6b7c8b38
|
Reformat for new mode syntax, step 1
Long lines were fixed in a very crude way, as I'll be following up
with another reformat in a bit.
|
2011-09-12 12:04:14 +02:00 |
|
Marijn Haverbeke
|
0e6e56ca60
|
Make the names of the arg mode tag reflect their (revised) meaning
|
2011-09-12 11:07:17 +02:00 |
|
Brian Anderson
|
a1d71995ec
|
Rename istr-stuff to str in rustc. Issue #855
|
2011-09-02 22:11:46 -07:00 |
|
Brian Anderson
|
f1555e2ca8
|
Rename ty_istr to ty_str. Issue #855
|
2011-09-02 22:11:46 -07:00 |
|
Brian Anderson
|
5c49e4f4e9
|
Reformat. Issue #855
|
2011-09-02 22:11:42 -07:00 |
|
Brian Anderson
|
9c173f17c0
|
Remove lots of estr code from rustc. Issue #855
|
2011-09-01 23:25:33 -07:00 |
|
Brian Anderson
|
418d09e547
|
Convert all uses of #ifmt to #fmt. Issue #855
|
2011-09-01 18:54:03 -07:00 |
|
Brian Anderson
|
ab6bb035e5
|
Rename std::istr to std::str. Issue #855
|
2011-09-01 17:27:58 -07:00 |
|
Brian Anderson
|
e824775d53
|
Remove std::str. Issue #855
|
2011-09-01 16:09:15 -07:00 |
|
Brian Anderson
|
498e38b705
|
Convert uses of #fmt to #ifmt. Issue #855
|
2011-08-31 11:44:06 -07:00 |
|
Brian Anderson
|
5f57a508af
|
Convert misc compiler bits to istrs. Issue #855
|
2011-08-27 18:05:59 -07:00 |
|
Brian Anderson
|
9857048929
|
Convert rustc::driver::session to istrs. Issue #855
|
2011-08-27 16:47:50 -07:00 |
|
Brian Anderson
|
cbad23a747
|
Convert pretty-printer to istrs. Issue #855
|
2011-08-27 15:54:46 -07:00 |
|
Brian Anderson
|
d2ae28fc99
|
Convert rustc::util to istrs. Issue #855
|
2011-08-27 15:54:45 -07:00 |
|
Brian Anderson
|
54691f9a6c
|
Convert rustc::metadata to istrs. Issue #855
|
2011-08-27 15:54:45 -07:00 |
|
Brian Anderson
|
f09ef6ec66
|
Convert rest of the AST to istrs. Issue #855
|
2011-08-27 15:54:45 -07:00 |
|
Brian Anderson
|
afe27d461c
|
Convert crate_ctxt to istrs. Issue #855
|
2011-08-27 15:54:45 -07:00 |
|
Brian Anderson
|
d7fa75413f
|
Convert rustc::lib::llvm to istr::sbufs. Issue #855
|
2011-08-27 15:54:44 -07:00 |
|
Brian Anderson
|
6b3f0b21be
|
Convert the rest of rustc::back to istrs. Issue #855
|
2011-08-27 15:54:44 -07:00 |
|
Brian Anderson
|
a58bfced3c
|
Convert back::link to istrs. Issue #855
|
2011-08-27 15:54:44 -07:00 |
|
Brian Anderson
|
03119fe269
|
Convert ast::ident to istr. Issue #855
|
2011-08-27 15:54:44 -07:00 |
|
Brian Anderson
|
652332f9d4
|
Convert std::map::new_str_hash to istrs. Issue #855
|
2011-08-27 15:54:44 -07:00 |
|
Brian Anderson
|
b2408d57f0
|
Convert portions of rustc to istrs. Recover a lot of performance.
Issue #855
|
2011-08-27 15:54:43 -07:00 |
|
Brian Anderson
|
fcc031c5b4
|
Convert std::io to istrs. Issue #855
|
2011-08-27 15:54:43 -07:00 |
|
Brian Anderson
|
c2eafd268b
|
Convert std::fs to istrs. Issue #855
|
2011-08-27 15:53:09 -07:00 |
|
Brian Anderson
|
53be480d20
|
Convert std::int to istrs. Issue #855
|
2011-08-27 15:53:08 -07:00 |
|
Brian Anderson
|
ee2a11eb4f
|
Convert std::uint to istrs. Issue #855
|
2011-08-27 15:53:08 -07:00 |
|
Tim Chevalier
|
c6155d1fd1
|
Change "pred" to "pure fn" (but still accept "pred")
This is part 1 of changing the "pred" keyword to "pure fn".
Right now, the compiler accepts both "pred" and "pure fn".
|
2011-08-24 14:21:37 -07:00 |
|
Brian Anderson
|
18576e55f7
|
Resolve a number of FIXMEs
|
2011-08-23 18:55:37 -07:00 |
|
Brian Anderson
|
152cbaade7
|
Move functions from syntax::ast to syntax::ast_util
This leaves syntax::ast just defining the AST, which strikes me as somewhat
nicer
|
2011-08-22 10:44:04 -07:00 |
|
Marijn Haverbeke
|
10269dfaeb
|
Replace &ty::t with ty::t throughout the compiler
Type handles are uints, passing them by reference only causes
unnecessary spilling.
|
2011-08-22 14:06:17 +02:00 |
|
Brian Anderson
|
518dc52f85
|
Reformat
This changes the indexing syntax from .() to [], the vector syntax from ~[] to
[] and the extension syntax from #fmt() to #fmt[]
|
2011-08-20 11:04:00 -07:00 |
|
Brian Anderson
|
1aa1f8c4b7
|
Rename various things from ivec to vec
|
2011-08-18 14:32:25 -07:00 |
|
Brian Anderson
|
4fc3618233
|
Change ast::ty_ivec, ty::ty_ivec to ty_vec
|
2011-08-18 14:11:06 -07:00 |
|
Brian Anderson
|
c2d2dad093
|
Remove ast::ty_vec
|
2011-08-18 13:09:50 -07:00 |
|
Marijn Haverbeke
|
cd440d338e
|
Remove or _-prefix all unused function arguments
This should make the compilation process a bit less noisy.
|
2011-08-18 10:02:13 +02:00 |
|
Erick Tryzelaar
|
af21a27002
|
Port the compiler to the expr foo::<T> syntax.
|
2011-08-16 15:05:56 -07:00 |
|
Erick Tryzelaar
|
4abc471390
|
Port the compiler to foo<T> decl syntax.
|
2011-08-16 15:05:56 -07:00 |
|
Erick Tryzelaar
|
e4a0f997fb
|
Port the compiler to the typaram foo<T> syntax.
|
2011-08-16 15:05:56 -07:00 |
|
Eric Holk
|
862bc521a1
|
Removing tasks, ports and chans from the compiler.
|
2011-08-16 10:59:49 -07:00 |
|
Brian Anderson
|
f05a91a0dc
|
Rename std::ivec to std::vec
|
2011-08-16 10:36:19 -07:00 |
|
Lindsey Kuper
|
f91351aaf6
|
The wonky for...in... whitespace was bothering me. Sorry!
|
2011-08-15 22:19:50 -07:00 |
|
Paul Stansifer
|
ebb16e6a25
|
Use span stacks to track macro expansion for less troublesome error messages.
|
2011-08-15 15:35:28 -07:00 |
|
Paul Stansifer
|
c48036c0b7
|
Make spans into stacks (to store expansion backtraces).
|
2011-08-15 15:35:27 -07:00 |
|
Marijn Haverbeke
|
29ea87542f
|
Tuple fields are immutable
|
2011-08-15 12:08:05 +02:00 |
|
Marijn Haverbeke
|
9538b00363
|
Tuple types back, not constructable yet
|
2011-08-15 11:40:38 +02:00 |
|
Brian Anderson
|
544bdf05c5
|
Convert uint::parse_buf to ivecs
|
2011-08-12 12:14:07 -07:00 |
|
Brian Anderson
|
0fed53921f
|
Remove ebmlivec module
|
2011-08-12 12:14:06 -07:00 |
|
Brian Anderson
|
7625ed52ee
|
Remove vecs from std::sort
|
2011-08-12 12:14:06 -07:00 |
|
Brian Anderson
|
7d05da96f7
|
Rename std::ioivec to std::io
|
2011-08-12 12:08:27 -07:00 |
|
Brian Anderson
|
119f43e0c7
|
Rename str::connect_ivec to str::connect
|
2011-08-12 12:08:27 -07:00 |
|
Brian Anderson
|
1e397eee2a
|
Rename str::split_ivec to str::split
|
2011-08-12 12:08:27 -07:00 |
|
Brian Anderson
|
64f53dfbb0
|
Convert uses of str::split to split_ivec
|
2011-08-12 12:08:27 -07:00 |
|
Brian Anderson
|
740196987e
|
Rename std::str::unsafe_from_bytes_ivec to unsafe_from_bytes
|
2011-08-12 12:08:27 -07:00 |
|
Brian Anderson
|
2e7e58812b
|
Remove vec version of str::bytes, rename bytes_ivec to str::bytes
|
2011-08-12 12:08:26 -07:00 |
|
Patrick Walton
|
19424dfab6
|
rustc: Add unique pointers to the set of types we support
|
2011-08-10 17:24:22 -07:00 |
|
Erick Tryzelaar
|
8b15045224
|
Port the compiler to the ivec type [T] syntax.
|
2011-08-09 15:53:26 -07:00 |
|
Graydon Hoare
|
b54e7e4506
|
Add new arg-passing mode 'move' denoted with '-T'. Translate as pass-by-value, doesn't deinit source yet nor get proper analysis in typestate, alias passes.
|
2011-08-08 15:53:41 -07:00 |
|
Patrick Walton
|
b079e1adbb
|
rustc: Parse "inline". Also write it into metadata.
|
2011-08-05 13:59:27 -07:00 |
|
Patrick Walton
|
59e9b629c0
|
Revert "rustc: Introduce the concept of inline to the AST"
This reverts commit 9b9170f9fe .
|
2011-08-05 11:38:06 -07:00 |
|
Patrick Walton
|
9b9170f9fe
|
rustc: Introduce the concept of inline to the AST
|
2011-08-05 11:33:48 -07:00 |
|
Graydon Hoare
|
59c441a66a
|
Encode, decode, and thread through typechecking all the param kinds, not just the counts.
|
2011-07-29 16:40:30 -07:00 |
|
Graydon Hoare
|
f3c05b9fae
|
Turn on kind propagation for typarams. Annotate a bunch of typarams in rustc and libstd.
|
2011-07-29 12:58:52 -07:00 |
|
Graydon Hoare
|
3e63fdc4c9
|
Thread kinds into the type system. Don't quite activate yet, since it breaks stdlib and snapshot isn't ready to compile modified stdlib.
|
2011-07-28 13:29:39 -07:00 |
|
Marijn Haverbeke
|
6e2a7bff7f
|
Fix damage done by the pretty-printer
|
2011-07-27 15:54:33 +02:00 |
|
Marijn Haverbeke
|
df7f21db09
|
Reformat for new syntax
|
2011-07-27 15:54:33 +02:00 |
|
Michael Sullivan
|
ac948b4ccd
|
Resolve and typecheck alias-environment-capturing blocks.
|
2011-07-26 12:30:14 -07:00 |
|
Marijn Haverbeke
|
e133f929b7
|
Convert all code that uses walk.rs in the straightforward way to simple_visit
Code that needs the keep_going functionality is still using walk. I will
add an equivalent to visit.rs later.
|
2011-07-26 17:13:48 +02:00 |
|
Marijn Haverbeke
|
2c1250780d
|
Remove tuple support from the compiler
|
2011-07-26 15:19:56 +02:00 |
|
Marijn Haverbeke
|
aea537779e
|
Remove all uses of tuples from the compiler and stdlib
|
2011-07-26 14:06:02 +02:00 |
|
Marijn Haverbeke
|
e949aab10a
|
Remove some rustboot-isms
Closes #464
|
2011-07-25 15:07:48 +02:00 |
|