about summary refs log tree commit diff
path: root/src/libsyntax/parse
diff options
context:
space:
mode:
authorTim Chevalier <chevalier@alum.wellesley.edu>2012-08-02 14:23:04 -0700
committerTim Chevalier <chevalier@alum.wellesley.edu>2012-08-02 23:53:45 -0700
commit948172b93fc5d31b7234ad98ff6bac466401a86a (patch)
tree1460fdb5dc1d5126a985f2bca9bbd5dc525f32ac /src/libsyntax/parse
parent31c5cec55bd8b43e6082f79dff888f52b585621d (diff)
Make comparisons between region pointers work
Region pointers were considered a scalar type, so compare_scalar_type would
get called to compare region pointers in trans. This would fail, since
compare_scalar_type has no case for region pointers.

Changed type_is_scalar to return false for region pointers. This had the side
effect of breaking casts to types of the form &T. To ameliorate that, I added
library functions ptr::assimilate (taking a &T to a *T) and ptr::to_uint
(taking a &T to a uint), both of which use reinterpret_cast.

While I was at it, I removed ty::type_has_resources, which is dead code.
Diffstat (limited to 'src/libsyntax/parse')
0 files changed, 0 insertions, 0 deletions