Debug: -g Memory leaks: -fsanitize=address -fsanitize=leak For undefined vars: -fsanitize=undefined Warnings (all of them): -Wall Static analysis: -fanalyze -Wanalyzer-too-complex (Don't use with sanitization) Optimization: -fopt-info