Skip to content

Commit f99be61

Browse files
committed
---
yaml --- r: 16324 b: refs/heads/try c: ab8fa49 h: refs/heads/master v: v3
1 parent 83ac68e commit f99be61

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
refs/heads/master: 61b1875c16de39c166b0f4d54bba19f9c6777d1a
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 4a81779abd786ff22d71434c6d9a5917ea4cdfff
5-
refs/heads/try: dd37c0a41e3c695886fb2f3c33f7fee6675822aa
5+
refs/heads/try: ab8fa495d08f64c5a82bc8ed39f9e2066aec4b6b
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105

branches/try/src/rustc/middle/borrowck/categorization.rs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,15 @@ determine what kind of memory is used in evaluating it (for example,
77
where dereferences occur and what kind of pointer is dereferenced;
88
whether the memory is mutable; etc)
99
10-
10+
Categorization effectively transforms all of our expressions into
11+
expressions of the following forms (the actual enum has many more
12+
possibilities, naturally, but they are all variants of these base
13+
forms):
14+
15+
E = rvalue // some computed rvalue
16+
| x // address of a local variable, arg, or upvar
17+
| *E // deref of a ptr
18+
| E.comp // access to an interior component
1119
1220
Imagine a routine ToAddr(Expr) that evaluates an expression and returns an
1321
address where the result is to be found. If Expr is an lvalue, then this

0 commit comments

Comments
 (0)