Policy on use of LLM tools and bug fixes
The discussion continues on the policy for using LLMs in GCC development, covering maintainability, code quality, and definition of LLM-generated code.
The discussion continues regarding a policy for using LLM tools for bug fixes in GCC. Participants raise concerns about the maintainability of LLM-generated code and question the definition of LLM-generated code, and whether that definition should include auto-completion suggestions. Other replies point out ecological and geopolitical issues.
- proposer
Provides a link to a list of their commits to GCC trunk, noting that all of them used some assistance from LLMs.
- other
Reports that the provided URL is a 404 error and asks for the list to be shared via pastebin.
“however the url point to a 404, probably because your gcc-dev repo is configured as private GitHub one. Would you mind to share the list though a pastebin?”
- other
Questions the differences between LLM-generated code and code generated by less sophisticated plugins.
“So an auto-complete done by an LLM counts, but one generated by a less-sophisticated plugin doesn't? What's the difference?”
- other
Clarifies that the question is about the definition of LLM-generated code rather than philosophical issues.
“I'm talking about the *definition*, not philosphical issues. Does the proposed *definition* only refer to LLMs?”
- other
Confirms that the discussion is about LLMs.
“ehm... yes? That's the topic of this thread, after all.”
- other
Acknowledges a loss of context.
“Sorry, I lost context.”
Technical Tradeoffs
- Using LLMs may increase development speed but introduces risks to code quality and maintainability.
- A restrictive policy on LLMs may limit innovation but ensures code quality and maintainability.
In Details
The GCC project is discussing a formal policy on the use of Large Language Models (LLMs) in development. The discussion involves concerns about code quality, maintainability, and legal issues related to copyright and licensing of LLM-generated code. This is a follow-up to the creation of the AI Policy Working Group.
For Context
GCC is the GNU Compiler Collection, a set of tools used to compile source code. The increasing use of AI-powered tools (specifically Large Language Models) in software development raises questions about code quality and maintainability. The GCC community is discussing a policy to address these concerns and set guidelines for using LLMs in GCC development. LLMs raise concerns about understandability and maintainability.