search for: cxxmethoddecl

Displaying 15 results from an estimated 15 matches for "cxxmethoddecl".

2013 Sep 05
0
[LLVMdev] [ast-dump] Class template partial specializations missing from an implicit class template instantiation?
...er | | |-ClassTemplateDecl 0x390ec80 <line:3:4, col:51> Inner | | | |-TemplateTypeParmDecl 0x390eb40 <col:13, col:22> typename U | | | `-CXXRecordDecl 0x390ebf0 <col:25, col:51> struct Inner definition | | | |-CXXRecordDecl 0x390ef00 <col:25, col:32> struct Inner | | | `-CXXMethodDecl 0x390f010 <col:39, col:49> f 'float (void)' | | | `-CompoundStmt 0x390f668 <col:48, col:49> | | `-ClassTemplatePartialSpecializationDecl 0x390f280 <line:4:4, col:53> struct Inner definition | | |-TemplateArgument type 'type-parameter-1-0 *' | | |-TemplateTy...
2016 Nov 28
2
Looking for help with an ast matcher
...t 10:50 PM Piotr Padlewski <piotr.padlewski at gmail.com> wrote: > Hi Mads, > I formatted your matcher a little bit just to understand it: > > ifStmt(hasCondition(implicitCastExpr(hasImplicitDestinationType( > isInteger()), > has(cxxMemberCallExpr(callee(cxxMethodDecl(hasName(" > compare"))), > hasArgument(0, > declRefExpr().bind("str2")), > callee(memberExpr(has( > declRefExpr().bind("str1"))))))))).bind("case1") > > A...
2016 Nov 28
2
Looking for help with an ast matcher
Hi Piotr, I think I found a working matcher: match ifStmt(hasCondition(implicitCastExpr(hasImplicitDestinationType(isInteger()), has(cxxMemberCallExpr(callee(cxxMethodDecl(hasName("compare"))), hasArgument(0, declRefExpr().bind("str2")), callee(memberExpr(has(declRefExpr().bind("str1"))))))))).bind("case1") This one bind to both str1 and str2 in str1.compare(str2). I have included a code segment below. I have attached a screen...
2012 Mar 08
1
[LLVMdev] fix a "does not name a type" bug in VASTContext.h
...*LastFD) const; // Access to the set of methods overridden by the given C++ method. - typedef CXXMethodVector::const_iterator overridden_cxx_method_iterator; + typedef CXXMethodVector::iterator overridden_cxx_method_iterator; overridden_cxx_method_iterator overridden_methods_begin(const CXXMethodDecl *Method) const; -- 1.7.0.4 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120308/7ee1a1f8/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-fix-a-...
2012 Oct 02
0
[LLVMdev] Wrong type qualifier for this pointer in case of ARM compiled binary
Hi Karthik, > Expected result when we run - > > print Simple::fun in GDB is > void fun(Simple* const this) > > as this should be a const pointer but in case of arm compiled binary we get > void fun(Simple* this). I believe the actual type is coming from CXXMethodDecl::getThisType, which quotes the standard as saying: // C++ 9.3.2p1: The type of this in a member function of a class X is X*. // If the member function is declared const, the type of this is const X*, // if the member function is declared volatile, the type of this is // volatile X*, and if...
2012 Oct 01
2
[LLVMdev] Wrong type qualifier for this pointer in case of ARM compiled binary
Hi All, Was looking into a simple program - class Simple { public: void fun() {} }; int main() { Simple s; s.fun(); return 0; } When compiled using clang++ for ARM- Expected result when we run - print Simple::fun in GDB is void fun(Simple* const this) as this should be a const pointer but in case of arm compiled binary we get void fun(Simple* this). Works fine when compiled using
2014 Jan 20
2
[LLVMdev] Methods on addrspace pointers
...n::EmitCall(clang::CodeGen::CGFunctionInfo const&, llvm::Value*, clang::CodeGen::ReturnValueSlot, clang::CodeGen::CallArgList const&, clang::Decl const*, llvm::Instruction**) + 3075 > 9 clang-3.4 0x0000000103c11c02 clang::CodeGen::CodeGenFunction::EmitCXXMemberCall(clang::CXXMethodDecl const*, clang::SourceLocation, llvm::Value*, clang::CodeGen::ReturnValueSlot, llvm::Value*, llvm::Value*, clang::QualType, clang::ConstExprIterator, clang::ConstExprIterator) + 738 I know it is not actually expected to be correct behavior to use other addrspace pointers in place of addrspace(0) p...
2012 Nov 05
1
[LLVMdev] User Defined Functions
Hi, Can we check whether a given funcion is user defined or not? -- Sunil Rathee MTech IIT Delhi Not going along with the crowd can help you stand out in the crowd -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20121106/8d56dd24/attachment.html>
2015 Jan 14
3
[LLVMdev] Crash on invalid during LLVMContext destruction MDNode::dropAllReferences
Hi Duncan, I came across something like the following recently which I guess might be related to your recent work. Any ideas? $ clang++-tot -cc1 crash_on_invalid.cpp -g -emit-obj -fexceptions -fcxx-exceptions crash_on_invalid.cpp:13:1: error: C++ requires a type specifier for all declarations x; ^ 1 error generated. *** Error in `clang++-tot': corrupted double-linked list: 0x000000000754f340
2019 Jun 09
2
Strange local variable cv::VideoCapture allocated
...ame, int& frame_id) { // read frame from file ++frame_id; 483: enable_ffmpeg_decoder_ ? (ffmpeg_video_capture_.read(curr_frame)) : opencv_video_capture_ >> curr_frame; return !curr_frame.empty(); } Generated AST from ast-dump: =========================== -CXXMethodDecl 0x7ff113148810 parent 0x7ff114400cb0 prev 0x7ff114401e30 <line:480:1, line:486:1> line:480:18 used readFileFrame 'bool (cv::Mat &, int &)' | |-ParmVarDecl 0x7ff113148708 <col:32, col:37> col:37 used curr_frame 'cv::Mat &' | |-ParmVarDecl 0x7ff113148780 &l...
2016 Nov 27
2
Looking for help with an ast matcher
Adding cfe-dev, because it is related to clang, not LLVM. 2016-11-27 22:34 GMT+01:00 Piotr Padlewski <piotr.padlewski at gmail.com>: > Hi Mads, > Can you provide the code that you run clang-query on, or at least AST for > the fragment you want to match? > > Piotr > > 2016-11-26 22:27 GMT+01:00 Mads Ravn via llvm-dev <llvm-dev at lists.llvm.org > >: >
2015 Jan 14
2
[LLVMdev] Crash on invalid during LLVMContext destruction MDNode::dropAllReferences
...26 in > clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl, > llvm::Function*, clang::CodeGen::CGFunctionInfo const&) > (/Users/dexonsmith/data/llvm.asan/staging/bin/clang+0x102777b26) > #9 0x10d494e58 in > clang::CodeGen::CodeGenModule::codegenCXXStructor(clang::CXXMethodDecl > const*, clang::CodeGen::StructorType) > (/Users/dexonsmith/data/llvm.asan/staging/bin/clang+0x102573e58) > #10 0x10d75f36d in (anonymous > namespace)::ItaniumCXXABI::emitCXXStructor(clang::CXXMethodDecl const*, > clang::CodeGen::StructorType) > (/Users/dexonsmith/data/llvm.a...
2016 Apr 01
0
[cfe-dev] RFC: Up front type information generation in clang and llvm
...>getTypeClass() != Type::FunctionProto && Ty->getTypeClass() != Type::FunctionNoProto) + Ty = CGM.getContext().IntTy; + if (auto *T = getTypeOrNull(Ty)) return T; @@ -2603,7 +2599,7 @@ llvm::DISubprogram *CGDebugInfo::getFunctionDeclaration(const Decl *D) { if (const CXXMethodDecl *MD = dyn_cast<CXXMethodDecl>(FD->getCanonicalDecl())) { return CreateCXXMemberFunction(MD, getOrCreateFile(MD->getLocation()), - cast<llvm::DICompositeType>(S)); + cast<llvm::DIType>...
2014 Aug 27
6
[LLVMdev] Minimizing -gmlt
...unsigned LineNo = 0; + unsigned ScopeLine = 0; + if (DebugKind > CodeGenOptions::DebugLineTablesOnly) { + LineNo = getLineNumber(Loc); + ScopeLine = getLineNumber(ScopeLoc); + } // FIXME: The function declaration we're constructing here is mostly reusing // declarations from CXXMethodDecl and not constructing new ones for arbitrary diff --git test/CodeGenCXX/debug-info-blocks.cpp test/CodeGenCXX/debug-info-blocks.cpp index 5b20db5..207e2b0 100644 --- test/CodeGenCXX/debug-info-blocks.cpp +++ test/CodeGenCXX/debug-info-blocks.cpp @@ -10,5 +10,5 @@ void test() { __block A a; } -...
2016 Mar 30
5
[cfe-dev] RFC: Up front type information generation in clang and llvm
On Tue, Mar 29, 2016 at 11:20 PM Robinson, Paul < Paul_Robinson at playstation.sony.com> wrote: > Skipping a serialization and doing something clever about LTO uniquing > sounds awesome. I'm guessing you achieve this by extracting types out of > DI metadata and packaging them as lumps-o-DWARF that the back-end can then > paste together? Reading between the lines a bit