alexfh added a comment. In https://reviews.llvm.org/D21134#508524, @jroelofs wrote:
> I think the replacement is wrong for something like: > > int *arr; int offs1, offs2; > offs1[arr + offs2] = 42; > > > which I think would give: > > int *arr; int offs1, offs2; > arr + offs2[offs1] = 42; > > > If the precedence of the "indexing" argument is less than that of the > subscript operator, then you need to insert parens: > > int *arr; int offs1, offs2; > (arr + offs2)[offs1] = 42; > Indeed. It might be relevant to future (current ones seem to be fine) uses of `tooling::fixit::createReplacement` as well, so should probably be taken care of in its implementation. Maybe an additional hint from the calling code is needed (`bool InsertParensIfNeeded = false`). https://reviews.llvm.org/D21134 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits