[cfe-dev] how to determine a parameter has a type declaratorinclang

kevinlynx kevinlynx at gmail.com
Fri Jan 4 17:28:36 PST 2013


i tried 

            QualType t;
            TypeLoc loc = p->getTypeSourceInfo()->getTypeLoc();
            printf("%d\n", loc.getTypeLocClass());  // built-in class
            t = p->getTypeSourceInfo()->getType();  // t.getAsString() -> "int"
            t = loc.getType); // t.getAsString() -> "int"
            printf("%s\n", t.getAsString().c_str()); // int

on 
            void func(int a, b)

i still get `int` for `b`. Can you give me more details on how to use this methods ?



------------------ Original ------------------
From:  "John McCall"<rjmccall at apple.com>;
Date:  Sat, Jan 5, 2013 02:05 AM
To:  "kevinlynx"<kevinlynx at gmail.com>; 
Cc:  "cfe-dev"<cfe-dev at cs.uiuc.edu>; 
Subject:  Re: [cfe-dev] how to determine a parameter has a type declaratorinclang



On Jan 3, 2013, at 6:22 PM, kevinlynx <kevinlynx at gmail.com> wrote:
> But i did not find any methods about `written` in ParamVarDecl, or QualType.

I'm sorry, it's getTypeSourceInfo().

John.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20130105/28ce7c28/attachment.html>


More information about the cfe-dev mailing list