I had the idea that the missing headers may be somewhere in the build folder and sure enough there they were.<br><br>I was able to build the wpa and PrintFunctionNames example. Looking in the readme of PrintFunctionNames i saw<br>
<br>clang -cc1 -load ../../Debug+Asserts/lib/libPrintFunctionNames.so -plugin print-fns some-input-file.c<br><br>so i ran<br>clang -cc1 -load clangPlugin.dll -plugin printfns a.c<br><br>and got<br>error: unable to find plugin 'print-fns'<br>
<br>I suspect it involves visual studios and exporting with its DLL. I included the 'exports' file and it didnt help. It said "_ZN4llvm8Registry*" which is weird. I suspect i am suppose to export "FrontendPluginRegistry::Add<PrintFunctionNamesAction>". So i threw __declspec(dllexport) in front of it which it complained about being static. I remove static and it compile fine but i still get that unable to find plugin error. If i use an incorrect dll file name it says it cant find the module so i know the dll name is correct. I just dont know how to call it/export it properly<br>
<br>Any ideas?<br><br>Also thanks for that edit retval, i'll want to run it but the problem above prevents me from doing so.<br><br><div class="gmail_quote">On Wed, Jun 15, 2011 at 2:36 PM, ret val <span dir="ltr"><<a href="mailto:retval386@gmail.com">retval386@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Its not the prettiest code ever, but I wrote something that gets function names, function calls and function pointers. I just modified the PrintFunctions example.<br>
<br><a href="https://gist.github.com/1027771" target="_blank">https://gist.github.com/1027771</a> or see the attachment<br>
<br>With PrintFunctionsConsumer you just implement the functions you want to use. You can also make a constructor/destructor like normal.<br><br><br><div class="gmail_quote"><div><div></div><div class="h5">On Tue, Jun 14, 2011 at 3:37 AM, Adam Smalin <span dir="ltr"><<a href="mailto:acidzombie24@gmail.com" target="_blank">acidzombie24@gmail.com</a>></span> wrote:<br>

</div></div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex"><div><div></div><div class="h5">Note: I am using LLVM and CLANG 2.9 <br><br>I want to start with someone basic. Like printing out all the function or class names. Or maybe all variables in a struct that is a type int. Anyways to get started i look at `llvm/tools/clang/examples`. I see clang-interpreter, in main.cpp theres nothing including AST and it seems like not what i want. The example PrintFunctionNames looks exactly what i want but theres no main(). I read it and it seems like HandleTopLevelDecl is the key function. I see instructions on how to use this on linux/mac but i rather do it on windows since i like debugging in VS.<br>


<br>Moving on i looked at clang-wpa.cpp which seems to kickstart an analyzer/debugger/something but i cant build it! I have missing files and such. One such error is "error C2039: 'LAST_INHERITABLE' : is not a member of 'clang::attr'". Others i mention in a post here <a href="http://stackoverflow.com/questions/6326453/" target="_blank">http://stackoverflow.com/questions/6326453/</a> Is the examples outdated? i am afraid to grab the main branch for more troubles. Does the example work on linux? and does it work on 2.9 tag or do i need to use a branch? (which?)<br>


<br><br><div></div>
<br></div></div>_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@cs.uiuc.edu" target="_blank">cfe-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev</a><br>
<br></blockquote></div><br>
</blockquote></div><br><div></div>