aboutsummaryrefslogtreecommitdiff
path: root/clang/tools/libclang/CIndex.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/tools/libclang/CIndex.cpp')
-rw-r--r--clang/tools/libclang/CIndex.cpp19
1 files changed, 11 insertions, 8 deletions
diff --git a/clang/tools/libclang/CIndex.cpp b/clang/tools/libclang/CIndex.cpp
index 9412d97..9493edf 100644
--- a/clang/tools/libclang/CIndex.cpp
+++ b/clang/tools/libclang/CIndex.cpp
@@ -2880,6 +2880,8 @@ void OpenACCClauseEnqueue::VisitTileClause(const OpenACCTileClause &C) {
void OpenACCClauseEnqueue::VisitPrivateClause(const OpenACCPrivateClause &C) {
VisitVarList(C);
+ for (VarDecl *V : C.getInitRecipes())
+ Visitor.AddDecl(V);
}
void OpenACCClauseEnqueue::VisitHostClause(const OpenACCHostClause &C) {
@@ -2893,6 +2895,10 @@ void OpenACCClauseEnqueue::VisitDeviceClause(const OpenACCDeviceClause &C) {
void OpenACCClauseEnqueue::VisitFirstPrivateClause(
const OpenACCFirstPrivateClause &C) {
VisitVarList(C);
+ for (const OpenACCFirstPrivateRecipe &R : C.getInitRecipes()) {
+ Visitor.AddDecl(R.RecipeDecl);
+ Visitor.AddDecl(R.InitFromTemporary);
+ }
}
void OpenACCClauseEnqueue::VisitPresentClause(const OpenACCPresentClause &C) {
@@ -2972,9 +2978,7 @@ void OpenACCClauseEnqueue::VisitIndependentClause(
const OpenACCIndependentClause &C) {}
void OpenACCClauseEnqueue::VisitSeqClause(const OpenACCSeqClause &C) {}
void OpenACCClauseEnqueue::VisitNoHostClause(const OpenACCNoHostClause &C) {}
-void OpenACCClauseEnqueue::VisitBindClause(const OpenACCBindClause &C) {
- assert(false && "TODO ERICH");
-}
+void OpenACCClauseEnqueue::VisitBindClause(const OpenACCBindClause &C) { }
void OpenACCClauseEnqueue::VisitFinalizeClause(const OpenACCFinalizeClause &C) {
}
void OpenACCClauseEnqueue::VisitIfPresentClause(
@@ -4716,8 +4720,7 @@ static const ExprEvalResult *evaluateExpr(Expr *expr, CXCursor C) {
std::string strRef(StrE->getString().str());
result->EvalData.stringVal = new char[strRef.size() + 1];
- strncpy((char *)result->EvalData.stringVal, strRef.c_str(),
- strRef.size());
+ strncpy(result->EvalData.stringVal, strRef.c_str(), strRef.size());
result->EvalData.stringVal[strRef.size()] = '\0';
return result.release();
}
@@ -4737,7 +4740,7 @@ static const ExprEvalResult *evaluateExpr(Expr *expr, CXCursor C) {
std::string strRef(StrE->getString().str());
result->EvalData.stringVal = new char[strRef.size() + 1];
- strncpy((char *)result->EvalData.stringVal, strRef.c_str(), strRef.size());
+ strncpy(result->EvalData.stringVal, strRef.c_str(), strRef.size());
result->EvalData.stringVal[strRef.size()] = '\0';
return result.release();
}
@@ -4756,7 +4759,7 @@ static const ExprEvalResult *evaluateExpr(Expr *expr, CXCursor C) {
result->EvalType = CXEval_CFStr;
result->EvalData.stringVal = new char[strLiteral.size() + 1];
- strncpy((char *)result->EvalData.stringVal, strLiteral.c_str(),
+ strncpy(result->EvalData.stringVal, strLiteral.c_str(),
strLiteral.size());
result->EvalData.stringVal[strLiteral.size()] = '\0';
return result.release();
@@ -4781,7 +4784,7 @@ static const ExprEvalResult *evaluateExpr(Expr *expr, CXCursor C) {
std::string strLiteral(S->getString().str());
result->EvalType = CXEval_CFStr;
result->EvalData.stringVal = new char[strLiteral.size() + 1];
- strncpy((char *)result->EvalData.stringVal, strLiteral.c_str(),
+ strncpy(result->EvalData.stringVal, strLiteral.c_str(),
strLiteral.size());
result->EvalData.stringVal[strLiteral.size()] = '\0';
return result.release();