summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang/AST/Type.cpp9
-rw-r--r--clang/include/clang/AST/Type.h33
2 files changed, 25 insertions, 17 deletions
diff --git a/clang/AST/Type.cpp b/clang/AST/Type.cpp
index dc3ee8ebcb1..15f0968b81c 100644
--- a/clang/AST/Type.cpp
+++ b/clang/AST/Type.cpp
@@ -56,12 +56,6 @@ bool Type::isDerivedType() const {
}
}
-// FIXME: move inline
-bool Type::isFunctionType() const { return isa<FunctionType>(CanonicalType); }
-bool Type::isPointerType() const { return isa<PointerType>(CanonicalType); }
-bool Type::isReferenceType() const { return isa<ReferenceType>(CanonicalType); }
-bool Type::isArrayType() const { return isa<ArrayType>(CanonicalType); }
-bool Type::isRecordType() const { return isa<RecordType>(CanonicalType); }
bool Type::isStructureType() const {
if (const RecordType *RT = dyn_cast<RecordType>(this))
if (RT->getDecl()->getKind() == Decl::Struct)
@@ -74,9 +68,6 @@ bool Type::isUnionType() const {
return true;
return false;
}
-bool Type::isVectorType() const { return isa<VectorType>(CanonicalType); }
-bool Type::isOCUVectorType() const { return isa<OCUVectorType>(CanonicalType); }
-
const FunctionType *Type::getAsFunctionType() const {
// If this is directly a function type, return it.
diff --git a/clang/include/clang/AST/Type.h b/clang/include/clang/AST/Type.h
index ceba2fa0b01..a2308c670bd 100644
--- a/clang/include/clang/AST/Type.h
+++ b/clang/include/clang/AST/Type.h
@@ -739,13 +739,7 @@ public:
};
-/// ...
-
-// TODO: When we support C++, we should have types for uses of template with
-// default parameters. We should be able to distinguish source use of
-// 'std::vector<int>' from 'std::vector<int, std::allocator<int> >'. Though they
-// specify the same type, we want to print the default argument only if
-// specified in the source code.
+// Inline function definitions.
/// getCanonicalType - Return the canonical version of this type, with the
/// appropriate type qualifiers on it.
@@ -754,7 +748,30 @@ inline QualType QualType::getCanonicalType() const {
getQualifiers() |
getTypePtr()->getCanonicalTypeInternal().getQualifiers());
}
-
+
+
+inline bool Type::isFunctionType() const {
+ return isa<FunctionType>(CanonicalType);
+}
+inline bool Type::isPointerType() const {
+ return isa<PointerType>(CanonicalType);
+}
+inline bool Type::isReferenceType() const {
+ return isa<ReferenceType>(CanonicalType);
+}
+inline bool Type::isArrayType() const {
+ return isa<ArrayType>(CanonicalType);
+}
+inline bool Type::isRecordType() const {
+ return isa<RecordType>(CanonicalType);
+}
+inline bool Type::isVectorType() const {
+ return isa<VectorType>(CanonicalType);
+}
+inline bool Type::isOCUVectorType() const {
+ return isa<OCUVectorType>(CanonicalType);
+}
+
} // end namespace clang
#endif
OpenPOWER on IntegriCloud