ATTRIBUTES for a member whose type is typedef'd in a template are wrong

I found that in ICG I have access to the canonical type of a variable which
in most cases is the type I should process.  Doing this eliminates the
need for some of the code that resolved typedefs because the canonical type
has already done that.

refs #200
This commit is contained in:
Alex Lin
2016-03-16 13:24:59 -05:00
parent 26dfb3a000
commit ce3ae67633
7 changed files with 80 additions and 293 deletions

View File

@ -3,6 +3,7 @@
#include <libgen.h>
#include <string.h>
#include <stdio.h>
#include <sys/stat.h>
#include <unistd.h>
#include "llvm/Support/Host.h"
@ -175,6 +176,11 @@ int main( int argc , char * argv[] ) {
input_file_full_path = almostRealPath( os.str().c_str() ) ;
//std::cout << input_file_full_path << std::endl ;
struct stat buffer ;
if ( stat ( input_file_full_path , &buffer) != 0 ) {
std::cerr << "Could not open file " << input_file_full_path << std::endl ;
exit(-1) ;
}
// Open up the input file and parse it.
const clang::FileEntry *pFile = ci.getFileManager().getFile(input_file_full_path);
#if (__clang_major__ >= 6) || ((__clang_major__ == 3) && (__clang_minor__ >= 5))