diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2010-09-24 17:30:16 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2010-09-24 17:30:16 +0000 |
commit | 745da3a5bb4ea35f93f50301e7fbbb7d78d3b6bb (patch) | |
tree | d2de835a949cf37da086500c49d5421662dea3c5 /include/clang/Sema/Initialization.h | |
parent | 51c7a789b17d708617946d5f9fde0a2e4feaefd1 (diff) |
Patch implements passing arrays to functions expecting
vla. Implements pr7827.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114737 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Sema/Initialization.h')
-rw-r--r-- | include/clang/Sema/Initialization.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/include/clang/Sema/Initialization.h b/include/clang/Sema/Initialization.h index 2ba6cdfd56..e0f518bef8 100644 --- a/include/clang/Sema/Initialization.h +++ b/include/clang/Sema/Initialization.h @@ -152,16 +152,20 @@ public: } /// \brief Create the initialization entity for a parameter. - static InitializedEntity InitializeParameter(ParmVarDecl *Parm) { - return InitializedEntity(Parm); + static InitializedEntity InitializeParameter(ASTContext &Context, + ParmVarDecl *Parm) { + InitializedEntity Res(Parm); + Res.Type = Context.getVariableArrayDecayedType(Res.Type); + return Res; } /// \brief Create the initialization entity for a parameter that is /// only known by its type. - static InitializedEntity InitializeParameter(QualType Type) { + static InitializedEntity InitializeParameter(ASTContext &Context, + QualType Type) { InitializedEntity Entity; Entity.Kind = EK_Parameter; - Entity.Type = Type; + Entity.Type = Context.getVariableArrayDecayedType(Type); Entity.Parent = 0; Entity.VariableOrMember = 0; return Entity; |