[cfe-dev] Macro expansion
Nathan James via cfe-dev
cfe-dev at lists.llvm.org
Sun May 31 03:58:41 PDT 2020
Hi,
Unfortunately the pre processor amounts to not much more than text
manipulation and as such it won't evaluate expressions. In your example
`C` will hold the value `16/4`. If you want to have more than that,
then you will likely need to add a pre-build step to your build
process, Similar(but very different) to TableGen.
Regards,
Nathan James
On Sun, 2020-05-31 at 15:43 +0530, Nagaraju Mekala via cfe-dev wrote:
> Hello All,
>
> I have a situation to expand a macro and I have succeeded by
> extracting a constant value using clang::MacroInfo
> getReplacementToken(0)
> But if a user gives a expression then how can we evaluate the macro
> value?
>
> ex:
> #define S 16
> #define O 4
> #define C S/O
>
> In the above example I need the evaluate S/O expression and use the
> value for my processing.
> Can someone point how can we do this?
>
> Thanks in advance.
>
> -Nagaraju
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
More information about the cfe-dev
mailing list