libera/#clasp - IRC Chatlog
Search
17:31:15
drmeister
::notify Bike I think the problem with llvm.dbg.value/addr is that inlined functions are getting the wrong dbg scope information when they are inlined. They are keeping the scope of their original function - not the scope of the function that they are ending up in. I've been updating the issue as I dig deeper... https://github.com/clasp-developers/clasp/issues/1172
17:33:56
drmeister
borodust: How do you deal with libraries that require subclassing of C++ classes?
17:37:22
drmeister
For example in the clang ASTMatcher library to use it I need to subclass this class: clang::ast_matchers::MatchFinder::MatchCallback Class
17:37:23
borodust
i don't have any special machinery in place for that, the only way it can be done for now is for a user of :claw to write a header where they can do any C++
17:38:47
drmeister
dump-match-callback is a subclass of the C++ class ast-tooling:match-callback. The defvirtual function essentially adds a virtual method that gets called from C++.
19:16:32
borodust
hmm, looks like there's nothing special in libclang to work with compilation databases, but, i guess, i can just directly extract required information for specific translation units from it
19:19:48
drmeister
I don't use libclang - but I occasionally look at the source code to see how they do things.
19:44:19
borodust
e.g. it would be cool if i could just feed it into libclang's parser or at least i could extract arguments w/o the need to know which are key/values and which are switches
19:45:42
borodust
i think it's possible just pass args as is into parser and it would likely work, but another thing is that this database is basically for implementation files (.cpp/.cc/.c etc) while i only use headers
19:48:34
borodust
maybe i'll add a parser to :claw that will extract only required info - includes/defines/arch/instructions - stuff that affects interface
23:04:43
drmeister
It's because I need to know about things in the .cc source. There are implementation detains in the .cc files that the GC needs to know about.