Description
GCCAsmStmt
stores its arguments in separately allocated array
llvm-project/clang/include/clang/AST/Stmt.h
Lines 3305 to 3311 in b936ef1
And is not considered to have any children.
Instead, we should store all these statements (contiguously) within the Exprs
of ASmStmt
and make sure that's returned from children()
llvm-project/clang/include/clang/AST/Stmt.h
Line 3160 in b936ef1
However, we should also make sure that the order of the children - and therefore the order of elements
in Expr makes sense,
ie Template, OutputConstraint0, OutputExpr0, ... OutputConstraintN, OutputExprN, InputConstraint0, InputExpr0, ... InputConstraintN, InputExprN, Label0, ...
Constructors, Getter, Setters, etc of GCCAsmStmt needs to be adapted to understand this order