diff options
| author | Chris Lattner <sabre@nondot.org> | 2007-07-16 00:23:25 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2007-07-16 00:23:25 +0000 |
| commit | aee0cfd486beab67bc08991a86799fd2f8c97c97 (patch) | |
| tree | be3dd850d21b9f0d6041c109572072578bf3a288 /llvm/lib/Analysis/ScalarEvolution.cpp | |
| parent | 36d572b9eaa6a1c7048db56780b1818b0eeb084a (diff) | |
| download | bcm5719-llvm-aee0cfd486beab67bc08991a86799fd2f8c97c97.tar.gz bcm5719-llvm-aee0cfd486beab67bc08991a86799fd2f8c97c97.zip | |
Now that isPointerType can return a pointer type, avoid stripping off typedef
information in the common case. On this invalid code:
typedef float float4 __attribute__((vector_size(16)));
typedef int int4 __attribute__((vector_size(16)));
void test(float4 a, int4 *result, int i) {
result[i] = a;
}
we now generate:
t.c:5:15: error: incompatible types assigning 'float4' to 'int4'
instead of:
t.c:5:15: error: incompatible types assigning 'float4' to 'int __attribute__((vector_size(16)))'
This implements test/Sema/typedef-retain.c
llvm-svn: 39892
Diffstat (limited to 'llvm/lib/Analysis/ScalarEvolution.cpp')
0 files changed, 0 insertions, 0 deletions

