[clang] [clang-refactor] Add Matcher Edit refactoring rule (PR #123782)
Roscoe A. Bartlett via cfe-commits
cfe-commits at lists.llvm.org
Wed Apr 30 13:36:16 PDT 2025
=?utf-8?b?0JjQs9C90LDRgiDQodC10YDQsw=?=,
=?utf-8?b?0JjQs9C90LDRgiDQodC10YDQsw=?Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/123782 at github.com>
bartlettroscoe wrote:
Hello @IgnatSergeev, thanks for your response!
I am looping in my colleague @achauphan who has been working with the LLVM Clang refactoring tooling ...
> But to be honest, i think that there are't many "users" for large refactoring tools, so when they are needed people write small portion of their own transformations, thus they don't get to open source
I just find that so surprising. It is so hard to even safely change the name of an overloaded function across a large C++ code base. And performing Extract Function can be very tedious to do it correctly with minimal inputs/outputs, dealing with multiple returns, etc.
Is this a chicken and the egg problem? I mean, do they not use the refactoring tools because the refactoring tools don't exist or are not reliable so they don't use them? Or is it because they don't do refactoring as a regular practice?
I asked ChatGPT 4o the question:
> Why do software developers not use automated source code refactoring tools more?
and it provided the following summary response (see [here](https://chatgpt.com/c/68128757-e3e0-800f-9d10-f5a14a4ee1f7)):
> Developers often avoid automated refactoring tools due to lack of trust, poor integration, workflow disruption, or organizational inertia. For tools to gain adoption, they must be safe, fast, unobtrusive, and deeply integrated into the developer's natural environment.
All it would take is one or two bad refactors from a refactoring tool and I think many people will just give up.
I have never had access to a working refactoring tool for C++ so I have zero experience with such tooling.
https://github.com/llvm/llvm-project/pull/123782
More information about the cfe-commits
mailing list