arXiv · 2508.14419
Static Analysis as a Feedback Loop: Enhancing LLM-Generated Code Beyond Correctness
Abstract
Large language models (LLMs) have demonstrated impressive capabilities in code generation, achieving high scores on benchmarks such as HumanEval and MBPP. However, these benchmarks primarily assess functional correctness and neglect broader dimensions of code quality, including security, reliability, readability, and maintainability. In this work, we systematically evaluate the ability of LLMs to generate high-quality code across multiple dimensions using the PythonSecurityEval benchmark. We introduce an iterative static analysis-driven prompting algorithm that leverages Bandit and Pylint to identify and resolve code quality issues. Our experiments with GPT-4o show substantial improvements: security issues reduced from >40% to 13%, readability violations from >80% to 11%, and reliability warnings from >50% to 11% within ten iterations. These results demonstrate that LLMs, when guided by static analysis feedback, can significantly enhance code quality beyond functional correctness.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Scott Blyth, Sherlock A. Licorish, Christoph Treude, Markus Wagner. 2025-08-20. Static Analysis as a Feedback Loop: Enhancing LLM-Generated Code Beyond Correctness. https://arxiv.org/abs/2508.14419
Cite the original work for its findings. Save a collection to share your selection of sources.