r211342 - [OPENMP] Initial support for 'schedule' clause.

Bataev, Alexey a.bataev at hotmail.com
Wed Jul 9 00:33:32 PDT 2014


Hi Tobias,
Thanks for the report! Though actually the code is correct, I think it 
should be improved at least to remove some messages from analyzers. 
I'll fix it.

Best regards,
Alexey Bataev
=============
Software Engineer
Intel Compiler Team

8 Июль 2014 г. 16:17:33, Tobias Grosser писал:
> On 20/06/2014 09:16, Alexey Bataev wrote:
>> Author: abataev
>> Date: Fri Jun 20 02:16:17 2014
>> New Revision: 211342
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=211342&view=rev
>> Log:
>> [OPENMP] Initial support for 'schedule' clause.
>>
>> Added:
>>      cfe/trunk/test/OpenMP/for_schedule_messages.cpp   (with props)
>> Modified:
>>      cfe/trunk/include/clang/AST/DataRecursiveASTVisitor.h
>>      cfe/trunk/include/clang/AST/OpenMPClause.h
>>      cfe/trunk/include/clang/AST/RecursiveASTVisitor.h
>>      cfe/trunk/include/clang/Basic/OpenMPKinds.def
>>      cfe/trunk/include/clang/Basic/OpenMPKinds.h
>>      cfe/trunk/include/clang/Parse/Parser.h
>>      cfe/trunk/include/clang/Sema/Sema.h
>>      cfe/trunk/lib/AST/StmtPrinter.cpp
>>      cfe/trunk/lib/AST/StmtProfile.cpp
>>      cfe/trunk/lib/Basic/OpenMPKinds.cpp
>>      cfe/trunk/lib/Parse/ParseOpenMP.cpp
>>      cfe/trunk/lib/Sema/SemaOpenMP.cpp
>>      cfe/trunk/lib/Sema/TreeTransform.h
>>      cfe/trunk/lib/Serialization/ASTReaderStmt.cpp
>>      cfe/trunk/lib/Serialization/ASTWriterStmt.cpp
>>      cfe/trunk/test/OpenMP/for_ast_print.cpp
>>      cfe/trunk/tools/libclang/CIndex.cpp
>>
>> Modified: cfe/trunk/include/clang/AST/DataRecursiveASTVisitor.h
>> URL:
>> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/AST/DataRecursiveASTVisitor.h?rev=211342&r1=211341&r2=211342&view=diff
>>
>> ==============================================================================
>>
>> --- cfe/trunk/include/clang/AST/DataRecursiveASTVisitor.h (original)
>> +++ cfe/trunk/include/clang/AST/DataRecursiveASTVisitor.h Fri Jun 20
>> 02:16:17 2014
>> @@ -2344,6 +2344,13 @@ RecursiveASTVisitor<Derived>::VisitOMPPr
>>   }
>>
>>   template <typename Derived>
>> +bool
>> +RecursiveASTVisitor<Derived>::VisitOMPScheduleClause(OMPScheduleClause
>> *C) {
>> +  TraverseStmt(C->getChunkSize());
>> +  return true;
>> +}
>
> I just got a coverity mail, which to my understanding warned that the
> return value of TraverseStmt() is not checked here. Looking at the
> other definitions in this file the uses of TraverseStmt() outside of
> OMP support are commonly guarded by the TRY_TO() macro. However, in
> the OMP related code the return value is always ignored. Is this a
> bug/problem?
>
> To my understanding, several more cases miss a TRY_TO macro, and this
> function:
>
> template <typename Derived>
> template <typename T>
> void RecursiveASTVisitor<Derived>::VisitOMPClauseList(T *Node) {
>   for (auto *I : Node->varlists())
>     TraverseStmt(I);
> }
>
> does not even have the possibility to return a boolean value.
>
> Cheers,
> Tobias
>




More information about the cfe-commits mailing list