From eaf2bb89eb2aad3b80673de30febe52df43c10ec Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Tue, 24 Feb 2009 22:18:39 +0000 Subject: first wave of fixes for @encode sema support. This is part of PR3648. The big difference here is that (like string literal) @encode has array type, not pointer type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65391 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/CodeGenModule.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'lib/CodeGen/CodeGenModule.h') diff --git a/lib/CodeGen/CodeGenModule.h b/lib/CodeGen/CodeGenModule.h index 913e4bc4b1..3a98bb7d43 100644 --- a/lib/CodeGen/CodeGenModule.h +++ b/lib/CodeGen/CodeGenModule.h @@ -41,6 +41,7 @@ namespace clang { class ObjCImplementationDecl; class ObjCCategoryImplDecl; class ObjCProtocolDecl; + class ObjCEncodeExpr; class BlockExpr; class Decl; class Expr; @@ -212,6 +213,10 @@ public: /// for the given string literal. llvm::Constant *GetAddrOfConstantStringFromLiteral(const StringLiteral *S); + /// GetAddrOfConstantStringFromObjCEncode - Return a pointer to a constant + /// array for the given ObjCEncodeExpr node. + llvm::Constant *GetAddrOfConstantStringFromObjCEncode(const ObjCEncodeExpr *); + /// GetAddrOfConstantString - Returns a pointer to a character array /// containing the literal. This contents are exactly that of the given /// string, i.e. it will not be null terminated automatically; see -- cgit v1.2.3-70-g09d2