summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGClass.cpp
diff options
context:
space:
mode:
authorDavid Blaikie <dblaikie@gmail.com>2012-04-30 02:36:29 +0000
committerDavid Blaikie <dblaikie@gmail.com>2012-04-30 02:36:29 +0000
commit2d7c57ec1dca2ca678d086b545c4cf38091d0902 (patch)
tree3568bffdf992022c819331a278aec3ae60696215 /clang/lib/CodeGen/CGClass.cpp
parent13ef0cfd6976f54c5922be4ee2aaa4dac4395959 (diff)
downloadbcm5719-llvm-2d7c57ec1dca2ca678d086b545c4cf38091d0902.tar.gz
bcm5719-llvm-2d7c57ec1dca2ca678d086b545c4cf38091d0902.zip
Remove the ref/value inconsistency in filter_decl_iterator.
filter_decl_iterator had a weird mismatch where both op* and op-> returned T* making it difficult to generalize this filtering behavior into a reusable library of any kind. This change errs on the side of value, making op-> return T* and op* return T&. (reviewed by Richard Smith) llvm-svn: 155808
Diffstat (limited to 'clang/lib/CodeGen/CGClass.cpp')
-rw-r--r--clang/lib/CodeGen/CGClass.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/lib/CodeGen/CGClass.cpp b/clang/lib/CodeGen/CGClass.cpp
index 7062b9c6215..174a44258bd 100644
--- a/clang/lib/CodeGen/CGClass.cpp
+++ b/clang/lib/CodeGen/CGClass.cpp
@@ -808,7 +808,7 @@ HasTrivialDestructorBody(ASTContext &Context,
// Check fields.
for (CXXRecordDecl::field_iterator I = BaseClassDecl->field_begin(),
E = BaseClassDecl->field_end(); I != E; ++I) {
- const FieldDecl *Field = *I;
+ const FieldDecl *Field = &*I;
if (!FieldHasTrivialDestructorBody(Context, Field))
return false;
@@ -869,7 +869,7 @@ static bool CanSkipVTablePointerInitialization(ASTContext &Context,
const CXXRecordDecl *ClassDecl = Dtor->getParent();
for (CXXRecordDecl::field_iterator I = ClassDecl->field_begin(),
E = ClassDecl->field_end(); I != E; ++I) {
- const FieldDecl *Field = *I;
+ const FieldDecl *Field = &*I;
if (!FieldHasTrivialDestructorBody(Context, Field))
return false;
@@ -1066,7 +1066,7 @@ void CodeGenFunction::EnterDtorCleanups(const CXXDestructorDecl *DD,
SmallVector<const FieldDecl *, 16> FieldDecls;
for (CXXRecordDecl::field_iterator I = ClassDecl->field_begin(),
E = ClassDecl->field_end(); I != E; ++I) {
- const FieldDecl *field = *I;
+ const FieldDecl *field = &*I;
QualType type = field->getType();
QualType::DestructionKind dtorKind = type.isDestructedType();
if (!dtorKind) continue;
OpenPOWER on IntegriCloud