diff options
| author | Steve Naroff <snaroff@apple.com> | 2007-07-10 22:20:04 +0000 |
|---|---|---|
| committer | Steve Naroff <snaroff@apple.com> | 2007-07-10 22:20:04 +0000 |
| commit | e728ba3504794d496c91be403701bb4db7fe5459 (patch) | |
| tree | 3bcab17df7ea9da6faffa49f17717acee3f4907a /llvm/lib/Support/StringExtras.cpp | |
| parent | c14236b8aebf37c2a756a4427dc06f34b9ffb3e0 (diff) | |
| download | bcm5719-llvm-e728ba3504794d496c91be403701bb4db7fe5459.tar.gz bcm5719-llvm-e728ba3504794d496c91be403701bb4db7fe5459.zip | |
Bug #:
Submitted by:
Reviewed by:
Two vector fixes:
- Sema::CheckAssignmentConstraints() needs to compare the canonical type.
- Expr::isLvalue() needs to disallow subscripting into a vector returned by a function. This
follows the rules for struct returns (in C, at least...C++ is another story:-)
Here is an example...
float4 float4_return()
{
float4 xx;
return xx;
}
void add_float4_void_return(float4 *a, float4 *b, float4 *result)
{
float f;
float4_return()[1] = f; // now illegal
}
llvm-svn: 39728
Diffstat (limited to 'llvm/lib/Support/StringExtras.cpp')
0 files changed, 0 insertions, 0 deletions

