Ben Blum
904a74e99c
add compile-fail test sync-cond-shouldnt-escape.rs
2012-08-08 19:59:38 -04:00
Ben Blum
604e4add4a
sync: add blocking mutexes, condvars, and testcases
2012-08-08 19:59:38 -04:00
alexrp
d67314d5fc
Operator-assignment expressions -> Compound assignment expressions.
...
Also add note about type.
2012-08-09 01:19:48 +02:00
Lindsey Kuper
edf1d0c245
Minor cleanups/comments/whitespace changes
2012-08-08 16:07:52 -07:00
Lindsey Kuper
293f371477
Default methods in traits get through typeck.
2012-08-08 16:07:52 -07:00
Lindsey Kuper
c8bad36312
Change a match check
to match
2012-08-08 16:07:52 -07:00
Lindsey Kuper
8b79bed6dd
Clean up whitespace
2012-08-08 16:07:52 -07:00
Tim Chevalier
febd7ee239
Make let _ = e; have the same semantics as e;
...
The first case was getting treated like a variable binding, meaning that
if e had a destructor, it wouldn't run until the end of the enclosing scope.
To me it seems less confusing for let _ = e; and e; to work exactly the same
way, so now, the destructor for e runs immediately in both cases.
2012-08-08 15:37:45 -07:00
Brian Anderson
d99ca69cf7
lint: Allow trailing underscores in camel case idents
2012-08-08 15:05:49 -07:00
Graydon Hoare
8d5a51e9d7
Merge pull request #3146 from alexrp/incoming
...
Documentation updates (typestate and pure functions).
2012-08-08 14:58:46 -07:00
Michael Sullivan
79b5f68176
Implement + for @-vectors.
2012-08-08 14:30:45 -07:00
Patrick Walton
f110e8f21c
rustc: Do some plumbing work on nested enums
2012-08-08 14:19:21 -07:00
Jesse Ruderman
a76e4334b3
Add spawn_conversation
2012-08-08 16:57:13 -04:00
Elliott Slaughter
166cb1b28b
rustc: Strict enforcement of glue function types.
...
Make all glue functions take values by alias to remove the need for
bitcasts at the top of every glue function. Use static type
information to produce the correct type for glue functions so that
LLVM can enforce the type system at call sites.
2012-08-08 12:21:25 -07:00
Michael Sullivan
76d04af71a
In decoder, rename class_member_id to item_def_id.
2012-08-08 12:01:19 -07:00
Eric Holk
19c86c1e71
xfail-pretty
2012-08-08 12:00:52 -07:00
Tim Chevalier
c7d60ee053
Don't add struct names to the value name space if there's no constructor
...
Closes #3149
2012-08-08 11:53:08 -07:00
Eric Holk
c5fbff01ce
Add a really optimistic fast path in receive. Gives about a 7% performance improvement in msgsend-ring-pipes
2012-08-08 10:28:57 -07:00
Eric Holk
bc6ba6b091
Adding some examples for my internship presentation.
2012-08-08 10:28:57 -07:00
Niko Matsakis
802ea5d57e
refactor categorization out of borrowck into its own module.
...
first step towards #3148 and #3024 .
2012-08-08 09:22:07 -07:00
alexrp
11c1baa883
Remove remaining references to typestate in the manual.
2012-08-08 13:33:19 +02:00
alexrp
81aef34a5a
Alter the manual to speak of pure functions instead of predicate functions.
...
Since the typestate system is gone, this makes more sense now.
2012-08-08 13:30:31 +02:00
Niko Matsakis
52c517383e
improve borrowck error messages to explain regions better
2012-08-07 20:59:06 -07:00
Niko Matsakis
99af0d5480
new test case demonstrating ability to return ptr to interior of option
2012-08-07 20:13:03 -07:00
Patrick Walton
31965860c7
rustc: Resolve constructor expressions for variant structs
2012-08-07 19:12:58 -07:00
Patrick Walton
5ce3281a62
rustc: Parse variant structs; add a trivial test case
2012-08-07 18:55:19 -07:00
Graydon Hoare
8c95feda39
Add minor debug mode for measuring type sizes, helper for #3025 .
2012-08-07 18:40:02 -07:00
Patrick Walton
438765da59
rustc: Box struct_defs
2012-08-07 17:46:51 -07:00
Graydon Hoare
175be53e3f
Translate const structs.
2012-08-07 17:31:26 -07:00
Michael Sullivan
4be8239ac2
Add 'static' to rust-mode.el.
2012-08-07 17:18:14 -07:00
Michael Sullivan
7f7f47620e
Implement static typeclass methods. Closes #3132 .
2012-08-07 17:18:14 -07:00
Elliott Slaughter
a695e074f2
rustc: Cosmetic change to type_of to make control flow more obvious.
2012-08-07 16:58:15 -07:00
Elliott Slaughter
cdfc4b1c7a
rustc: Fix for type_of on recursive enum creating two types instead of one.
2012-08-07 16:58:15 -07:00
Patrick Walton
61446293f9
rustc: Move some more routines that operate on struct definitions out of line
2012-08-07 16:46:19 -07:00
Patrick Walton
0f711e72f7
libsyntax: Break struct definitions out of classes internally in a few more places
2012-08-07 16:09:08 -07:00
Brian Anderson
1f0574e8f0
Registor snapshots
2012-08-07 16:03:58 -07:00
Ben Blum
64ba7a31cb
Touch up semaphores; add another test
2012-08-07 18:57:49 -04:00
Patrick Walton
a3f9e18b7a
libsyntax: Allow users of the visitor to visit struct defs
2012-08-07 15:55:33 -07:00
Patrick Walton
deaef48675
rustc: Split out struct bodies into a separate "struct_def" type in the AST
2012-08-07 15:35:05 -07:00
Ben Blum
1a6dadad5b
fix trailing whitespace
2012-08-07 18:20:02 -04:00
Ben Blum
f2ca54991f
Add sync.rs with counting blocking semaphores
2012-08-07 18:18:48 -04:00
Ben Blum
bdbad614ac
Remove rust_cond_lock and sys::condition (rename to little_lock)
2012-08-07 18:18:48 -04:00
Graydon Hoare
32e4fd62e9
Const slices now work. Something odd about non-const cases though, see #3138 .
2012-08-07 15:04:40 -07:00
Brian Anderson
42540841f3
Add missing comma
2012-08-07 14:34:00 -07:00
Patrick Walton
727c7c7499
rustc: Add stub support for struct variants to the AST
2012-08-07 14:25:53 -07:00
Brian Anderson
bc267c696c
syntax: Rename expr_alt to expr_match
2012-08-07 13:35:51 -07:00
Brian Anderson
92ef17aaeb
syntax: Fix parsing of inherent traits
2012-08-07 13:01:22 -07:00
Brian Anderson
2772b2e5c7
syntax: Make match arm parsing more restrictive again
...
Require comma separators for all expression types except the plain block
2012-08-07 12:23:43 -07:00
Eric Holk
abf4421e7c
Generate try_send versions for all the messages. Fixes #3128
2012-08-07 11:47:12 -07:00
Eric Holk
672bfa5773
Working on a macro for selecting from many pipes.
2012-08-07 11:47:12 -07:00