<div dir="ltr"><div dir="ltr"><div>Hello,<div style="color:rgb(0,0,0);background-color:rgb(255,255,254)"><span style="color:rgb(0,0,255)"><br></span></div>#define MAX 10<br><br>int main() // (int n)<br>{<br>char arr[MAX * 3]; // arr[n + 3]<br>}<br><br>I expected that AST would be more detailed (e.g. Binary Operator) but Clang seems to fold it:<br>TranslationUnitDecl<br>`-FunctionDecl <line:11:1, line:14:1> line:11:5 main 'int ()'<br>`-CompoundStmt <line:12:1, line:14:1><br>`-DeclStmt <line:13:3, col:20><br>`-VarDecl <col:3, col:19> col:8 arr 'char [30]'</div><div><br></div><div>or raw output</div><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,254)"><div>`-VarDecl <col:<span style="color:rgb(9,136,90)">3</span>, col:<span style="color:rgb(9,136,90)">15</span>> col:<span style="color:rgb(9,136,90)">8</span> a <span style="color:rgb(163,21,21)">'</span><span style="color:rgb(0,0,255)">char</span> [n * <span style="color:rgb(9,136,90)">3</span>]<span style="color:rgb(163,21,21)">'</span></div></div></div><div><br></div><div>So with the current AST output we are unable to determine overflowing in array sizes, as requested in <a href="https://bugs.llvm.org/show_bug.cgi?id=27439">https://bugs.llvm.org/show_bug.cgi?id=27439</a>, right?</div><div><br></div><div>Is it possible to disable that folding / enhance VarDecl for arrays?</div></div></div>