<div dir="ltr">Awesome, thanks! <br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Aug 6, 2019 at 5:18 PM Aaron Ballman <<a href="mailto:aaron@aaronballman.com">aaron@aaronballman.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Tue, Aug 6, 2019 at 11:15 AM Monalisa Rout via cfe-commits<br>
<<a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a>> wrote:<br>
><br>
> Hello,<br>
> While dumping the AST for For loop, Why do I get  <<<NULL>>> ??<br>
><br>
> Source code:<br>
> void func()<br>
> {<br>
> for (int i = 0; i < 5; i++)<br>
> break;<br>
> }<br>
><br>
> AST<br>
><br>
> FunctionDecl 0x4a4ac10 <D:\Data\Rout\ASTJSONProject\ASTJSONProject\typeof.c:2:1, line:6:1> line:2:6 func 'void ()'<br>
> `-CompoundStmt 0x4a4ae1c <line:3:1, line:6:1><br>
>   `-ForStmt 0x4a4adf8 <line:4:2, line:5:3><br>
>     |-DeclStmt 0x4a4ad38 <line:4:7, col:16><br>
>     | `-VarDecl 0x4a4acd0 <col:7, col:15> col:11 used i 'int' cinit<br>
>     |   `-IntegerLiteral 0x4a4ad10 <col:15> 'int' 0<br>
>     |-<<<NULL>>><br>
>     |-BinaryOperator 0x4a4ada8 <col:18, col:22> 'int' '<'<br>
>     | |-ImplicitCastExpr 0x4a4ad98 <col:18> 'int' <LValueToRValue><br>
>     | | `-DeclRefExpr 0x4a4ad50 <col:18> 'int' lvalue Var 0x4a4acd0 'i' 'int'<br>
>     | `-IntegerLiteral 0x4a4ad70 <col:22> 'int' 5<br>
>     |-UnaryOperator 0x4a4ade0 <col:25, col:26> 'int' postfix '++'<br>
>     | `-DeclRefExpr 0x4a4adc0 <col:25> 'int' lvalue Var 0x4a4acd0 'i' 'int'<br>
>     `-BreakStmt 0x4a4adf0 <line:5:3><br>
<br>
The AST dumps child nodes by calling children() on a given AST node.<br>
The ForStmt node always has five child nodes, which are (in order):<br>
init statement, condition variable, condition, increment, and body.<br>
Some of those may be NULL depending on the format of the for loop<br>
(your for loop example has no condition variable, for instance).<br>
<br>
HTH!<br>
<br>
~Aaron<br>
<br>
><br>
> Regards,<br>
> Mona<br>
> _______________________________________________<br>
> cfe-commits mailing list<br>
> <a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a><br>
> <a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits</a><br>
</blockquote></div>