Tim Chevalier
bb2c45feae
Fix string
2012-07-19 19:10:21 -07:00
Tim Chevalier
ce46e113c5
Merge pull request #2910 from gwillen/bug-2360
...
Better error when rustc fails to write output.
2012-07-19 19:01:22 -07:00
Niko Matsakis
f676547c97
Fix intersection of two region params in infer, cc #2962
2012-07-19 10:14:16 -07:00
Patrick Walton
f48dcaaae3
rustc: Make vtable do duplicate-impl checking. Closes #2958 .
2012-07-18 18:10:00 -07:00
Tim Chevalier
3119afc6e8
In resolve3, error on non-existent imports
...
Closes #2937
2012-07-18 18:02:07 -07:00
Tim Chevalier
de5d5e6eeb
Remove non-existent imports
2012-07-18 18:02:07 -07:00
Patrick Walton
57e8de8917
rustc: Implement multiple-traits-per-impl for cross-crate stuff
2012-07-18 17:34:59 -07:00
Patrick Walton
635a959363
rustc: Make coherence aware of multiple-traits-per-impl
2012-07-18 17:08:42 -07:00
Patrick Walton
9d34c706b2
rustc: Move ty::impl_traits over to a multiple-traits-per-impl world
2012-07-18 16:49:55 -07:00
Patrick Walton
3c583def25
rustc: Make resolve3 multiple-trait-per-impl-aware
2012-07-18 16:28:59 -07:00
Patrick Walton
3ac5b4a86f
syntax: Parse multiple trait refs in a single implementation
2012-07-18 16:05:17 -07:00
Patrick Walton
1528256fdc
rustc: Encode metadata unconditionally for impls/traits/classes. Closes #2945 .
2012-07-18 14:43:16 -07:00
Niko Matsakis
e0ea67a2a6
prevent regions from escaping in ifaces; remove &r.T syntax
2012-07-18 11:48:58 -07:00
Niko Matsakis
4ee4a2ab31
borrow from @[] vectors (cc #2797 )
2012-07-17 19:16:00 -07:00
Patrick Walton
db020ab63c
rustc: Implement and enforce instance coherence
2012-07-17 15:46:43 -07:00
Tim Chevalier
b5729bd600
Support attributes on class ctors and dtors
...
Closes #2660
2012-07-17 12:40:59 -07:00
Tim Chevalier
cf9a9d1ae8
Remove most of old resolve
...
resolve has a few type definitions in it that are used, so I left
those and deleted everything else. Also, I switched rustdoc to use
resolve3 instead of the old resolve.
In a future commit I'll remove the type definitions entirely, as they're
just duplicates of types defined in resolve3.
2012-07-17 12:40:58 -07:00
Niko Matsakis
0e42004bab
introduce an owned kind for data that contains no borrowed ptrs
2012-07-16 20:18:18 -07:00
Graydon Hoare
d809336d0f
Fix reflection on vstore_fixed estrs and evecs.
2012-07-16 17:08:27 -07:00
Niko Matsakis
748f2e0909
improve comment
2012-07-16 13:29:00 -07:00
Niko Matsakis
3ef7ff8b89
infer the scope of borrows
2012-07-14 17:37:32 -07:00
Niko Matsakis
41a21f053c
remove typestate from code, tests, and docs
2012-07-14 17:37:20 -07:00
Michael Sullivan
6822ec3eb4
Treat bare vector and string literals as fixed length vecs. Closes #2922 .
2012-07-14 14:30:48 -07:00
Michael Sullivan
7b2f4755f3
Get rid of ast::ty_vstore, which was only used for fixed length.
2012-07-14 12:45:52 -07:00
Michael Sullivan
d884085f43
Tear out ty_str and ty_vec.
2012-07-14 12:19:36 -07:00
Michael Sullivan
b1dafe49af
Get rid of more deprecated strs on non 64-bit linux platforms.
2012-07-14 10:27:09 -07:00
Michael Sullivan
08a4440d64
Fix a bunch of deprecated str/vec errors in code for non 64-bit linux platforms...
2012-07-14 10:05:49 -07:00
Michael Sullivan
5a7d139a38
Merge branch 'vector-reform' into incoming
2012-07-14 01:03:54 -07:00
Michael Sullivan
e2af785606
Make the new world order normative. Closes #2908 .
2012-07-14 01:03:44 -07:00
Michael Sullivan
92743dc2a6
Move the world over to using the new style string literals and types. Closes #2907 .
2012-07-14 01:03:43 -07:00
Michael Sullivan
5c5065e8bd
Don't emit strings when the destination is ignored.
2012-07-14 00:07:24 -07:00
Michael Sullivan
eaf8b7675e
Warn on old strs
2012-07-13 17:59:59 -07:00
Lindsey Kuper
1ffc0720bb
Add FIXME marking where the work on #2794 has gotten to, so far.
2012-07-13 17:46:24 -07:00
Lindsey Kuper
9aa8a84766
Make an error message more grammatical.
2012-07-13 17:46:24 -07:00
Michael Sullivan
628d3e9d38
Change (hopefully) all of the code that generates strs asts to produce ~strs.
2012-07-13 17:03:54 -07:00
Michael Sullivan
f5e69d611e
Change the pretty printer to print vstores for strs in prefix notation.
2012-07-13 17:03:54 -07:00
Michael Sullivan
985b52be6d
Support prefix notation for vstore strings. Closes #2906 .
2012-07-13 17:03:49 -07:00
Lindsey Kuper
7bba0ae973
Change stray cont
to again
in a comment.
2012-07-13 15:45:24 -07:00
Lindsey Kuper
5a63b2100e
More consistent use of backticks and "expected" in error messages.
...
Got some of the debug messages, here, too. I figure it doesn't hurt
to get used to doing this even in places where users won't ever see
it.
2012-07-13 15:31:39 -07:00
Tim Chevalier
07a81ad12e
Refactor how impl self types are stored
...
In order to avoid a confusing use of the tcache, I added an extra
node ID field to trait refs. Now trait refs have a "ref ID" (the one
that resolve3 resolves) and an "impl ID" (the one that you look up
in the tcache to get the self type).
Closes #2434
2012-07-13 14:47:04 -07:00
Glenn Willen
28c1f21433
Better error when rustc fails to write output.
2012-07-13 17:06:30 -04:00
Lindsey Kuper
fc9c4c3245
Front-end support for default impls in traits.
2012-07-13 11:16:07 -07:00
Lindsey Kuper
d5563d732d
Consistently use "allowed" rather than "permitted" in error messages.
2012-07-13 11:10:18 -07:00
Niko Matsakis
a2f60651f1
add comments to region inference
2012-07-13 10:20:50 -07:00
Niko Matsakis
90e435e808
change region syntax to &r/T in place of &r.T
2012-07-13 10:20:50 -07:00
Zack Corr
de001dd61c
Change cont out of loop error to again out of loop
2012-07-14 01:24:33 +10:00
Tim Chevalier
78ec6fe30c
Obliterate the callee_id hack
...
Exprs that could be applications of overloaded operators
(expr_unary, expr_binary, expr_index) relied on the previous node ID
being "reserved" to carry extra typechecking info. This was
incredibly error-prone. Fixed it; now all exprs have two node IDs
(which will be wasted in some cases; future work could make this
an option instead if the extra int field ends up being a performance
problem).
Closes #2804
2012-07-12 19:02:07 -07:00
Eric Holk
aba665da32
Fix the signature on vec::view.
...
Due to limitations in region inference, this has the effect of making vec::view pretty much entirely unusable.
2012-07-12 18:16:00 -07:00
Brian Anderson
dac4916cec
rustc: Resolve bounds of trait type parameters
2012-07-12 18:04:40 -07:00
Graydon Hoare
18da7fef88
Merge remote-tracking branch 'origin/dist-snap' into incoming
2012-07-12 17:14:55 -07:00