[cfe-dev] Fwd: [LibTooling] Unable to parse cpp code when using libtooling feature

Aditya Atluri via cfe-dev cfe-dev at lists.llvm.org
Fri Jan 11 12:03:15 PST 2019


Hi,
On a second note, the code builds fine; but when I run the program it exits
without any output. I added my own FunctionDecl visitor to
MyRecursiveASTVisitor. I am guessing the code I am missing can be something
to do with headers and methods which are tagged `XX` as prefix or suffix
like, DeclXX.h or StmtXX.h or so.



On Fri, Jan 11, 2019 at 1:59 PM Aditya Atluri <adityaavinash1 at gmail.com>
wrote:

> Great! The post helped me figure out the right sequence of syntax to use.
> Here is how I figured it out.
> greped for LangOptions on clang/FrontEnd headers, found that
> CompilerInvocation takes LangOptions as an argument in one of its methods;
> CompilerInstance has a method to get its own instance of CompilerInvocation.
>
>
>
> On Fri, Jan 11, 2019 at 1:26 PM Keane, Erich via cfe-dev <
> cfe-dev at lists.llvm.org> wrote:
>
>>
>> https://stackoverflow.com/questions/38356485/how-do-i-put-clang-into-c-mode
>>
>>
>>
>> *From:* Aditya Atluri [mailto:adityaavinash1 at gmail.com]
>> *Sent:* Friday, January 11, 2019 11:09 AM
>> *To:* Keane, Erich <erich.keane at intel.com>
>> *Cc:* Clang Dev <cfe-dev at lists.llvm.org>
>> *Subject:* Re: [cfe-dev] Fwd: [LibTooling] Unable to parse cpp code when
>> using libtooling feature
>>
>>
>>
>> Hi Keane,
>>
>> Exactly my thoughts. But, how to do it?
>>
>>
>>
>> On Fri, Jan 11, 2019 at 1:05 PM Keane, Erich via cfe-dev <
>> cfe-dev at lists.llvm.org> wrote:
>>
>> Those are typical of attempting to compile C++ code as C.  I’m not sure
>> what the right way to set the LangOpts on CompilerInstance in libclang is,
>> but you likely need to update those to set LangOpts correctly for the
>> version of C++ you intend to support..
>>
>>
>>
>> *From:* cfe-dev [mailto:cfe-dev-bounces at lists.llvm.org] *On Behalf Of *Aditya
>> Atluri via cfe-dev
>> *Sent:* Friday, January 11, 2019 11:02 AM
>> *To:* cfe-dev at lists.llvm.org
>> *Subject:* [cfe-dev] Fwd: [LibTooling] Unable to parse cpp code when
>> using libtooling feature
>>
>>
>>
>> Hi,
>>
>> I am a novice developer hacking around ways to use clang for parsing
>> C/CPP code.
>>
>>
>>
>> I am able to parse C code with clangs libtooling feature properly. But,
>> when I use the code to parse CPP test code, I am getting the following
>> error:
>>
>>
>>
>> $ ./Main
>>
>> test.cpp:1:1: error: unknown type name 'template'
>>
>> template<typename T>
>>
>> ^
>>
>> test.cpp:1:9: error: expected identifier or '('
>>
>> template<typename T>
>>
>>         ^
>>
>> test.cpp:6:19: error: expected expression
>>
>>     float c = add<float>(a, b);
>>
>>                   ^
>>
>> test.cpp:6:15: error: use of undeclared identifier 'add'
>>
>>     float c = add<float>(a, b);
>>
>>               ^
>>
>>
>>
>>
>>
>> Attached: Main.mk (to build test), Main.cpp (Clang 8.0 based libtooling
>> source), test.cpp (test case)
>>
>>
>>
>> Please let me know if I am doing anything bad or missing something.
>>
>> The Makefile assumes that clang is installed in ~/llvm80
>>
>>
>>
>>
>>
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>>
>>
>>
>>
>> --
>>
>> - Aditya Atluri
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>>
>
>
> --
> - Aditya Atluri
>


-- 
- Aditya Atluri
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20190111/465a5828/attachment-0001.html>


More information about the cfe-dev mailing list