Example of such refactoring:
Customer* C; getCustumer(C);
Customer C = getCustumer();
Paths
| Differential D89794
[SyntaxTree] Implement "by-pointer output parameter to return value" refactoring. Needs ReviewPublic Authored by eduucaldas on Oct 20 2020, 7:46 AM. This revision needs review, but there are no reviewers specified.
Details
Summary Example of such refactoring: Customer* C; getCustumer(C); Customer C = getCustumer();
Diff Detail
Event TimelineComment Actions I imagine test coverage would be handy (I'm probably not the right reviewer for this in general, but was/am curious to see how it goes - you might want to search for other contributors/reviewers to the code you're changing and request/add them as reviewers for this patch) Comment Actions This patch will build upon https://reviews.llvm.org/D90240 and https://reviews.llvm.org/D90161 Glad to see that you're interested David, we'll keep you updated. Comment Actions Sam, this patch is outdated, as we're still making decisions on https://reviews.llvm.org/D90161 and we haven't yet landed https://reviews.llvm.org/D90240, please don't bother reviewing it. This is where we started thinking about iterators on lists, and about the usefulness of having reverse links for syntax nodes. I have added you to the subscriber list so you can follow the discussion once this is unblocked, and to show you the Mutations API in its early steps.
Revision Contents
Diff 299358 clang/include/clang/Tooling/Syntax/Mutations.h
clang/lib/Tooling/Syntax/Mutations.cpp
|
clang-tidy: error: no template named 'ElementAndDelimiterIterator' in 'clang::syntax::List'; did you mean 'ElementAndDelimiter'? [clang-diagnostic-error]
not useful