llvm&Clang
yangsh3002
宇宙是有限的,知识是无限的。
饭量是有限的,能量是无限的。
E-Mail:xiaoye3004@hotmail.com
展开
-
Clang解析C++程序(3)
编译器实例的语言设置不区区只是C语言和C++语言的简单区分,其中有多达100多条设置,其中绝大部分我都看不明白,看不明白也不用去弄明白,工作这么忙,只要知其然就好,下面是我经过仔细比较得出来的需要去手动设置的项,其它的都用默认设置。 LangOptions &lo = TheCompInst.getLangOpts(); lo.MSVCCompat = 1; lo.MicrosoftExt =原创 2016-10-10 23:39:03 · 1031 阅读 · 0 评论 -
Clang解析C++程序(1)
网上有篇Clang解析C程序的文章,用来给程序加上注释,正好手头上有个工作就是根据头文件生成一个接口文件,比如C语言接口。可以根据头文件的函数定义适当地改一下,结果,把文章中使用的那个C程序文件替换成C++头文件后,Clang解析器报错,说找不到include里包含的文件,看Clang源码看了一通,瞎猜着给设置了一下头文件包含目录,在HeaderSearchOption中AddPath,这下不报找原创 2016-08-30 23:03:57 · 2475 阅读 · 1 评论 -
Clang解析C++程序(2)
上一次说到将编译器实例的langoption中的CPlusPlus变量设置为1,就可以解析C++的程序了,也只是能解析简单的一段C++代码。后来在解析一个工作中用的头文件的时候,报了一大堆错,像不认识size_t啦,不认识__int64啦之类的。我简单地又构造了一些代码放在原来的简单代码段中,一运行,发现也认识。仔细区别了一下,发现两边代码有一个不同之处就是一边有包含的头文件,一边没有。我又重新在原创 2016-09-27 00:18:22 · 1185 阅读 · 0 评论