I am using emacs 29.1 on Linux RH8. I use compilation mode a lot, both for makefiles and for running other non-interactive programs. I also visit Vhdl files. After running emacs for a while, the variable compilation-error-regexp-alist gets very large. Here is an example after about 1 hour of emacs use: compilation-error-regexp-alist is a variable defined in 'compile.el'. Its value is (vhdl-directory vhdl-advance-ms vhdl-advance-ms-file vhdl-aldec vhdl-cadence-leapfrog vhdl-cadence-nc vhdl-ghdl vhdl-ibm-compiler vhdl-ikos vhdl-ikos-file vhdl-modelsim vhdl-leda-provhdl vhdl-quartus vhdl-quickhdl vhdl-savant vhdl-simili vhdl-speedwave vhdl-synopsys vhdl-synopsys-design-compiler vhdl-synplify vhdl-vantage vhdl-vantage-file vhdl-veribest vhdl-viewlogic vhdl-viewlogic-file vhdl-xilinx-xst vhdl-directory vhdl-advance-ms vhdl-advance-ms-file vhdl-aldec vhdl-cadence-leapfrog vhdl-cadence-nc vhdl-ghdl vhdl-ibm-compiler vhdl-ikos vhdl-ikos-file vhdl-modelsim vhdl-leda-provhdl vhdl-quartus vhdl-quickhdl vhdl-savant vhdl-simili vhdl-speedwave vhdl-synopsys vhdl-synopsys-design-compiler vhdl-synplify vhdl-vantage vhdl-vantage-file vhdl-veribest vhdl-viewlogic vhdl-viewlogic-file vhdl-xilinx-xst vhdl-directory vhdl-advance-ms vhdl-advance-ms-file vhdl-aldec vhdl-cadence-leapfrog vhdl-cadence-nc vhdl-ghdl vhdl-ibm-compiler vhdl-ikos vhdl-ikos-file vhdl-modelsim vhdl-leda-provhdl vhdl-quartus vhdl-quickhdl vhdl-savant vhdl-simili vhdl-speedwave vhdl-synopsys vhdl-synopsys-design-compiler vhdl-synplify vhdl-vantage vhdl-vantage-file vhdl-veribest vhdl-viewlogic vhdl-viewlogic-file vhdl-xilinx-xst verilog-leda verilog-verilator verilog-vcs-4 verilog-vcs-3 verilog-vcs-2 verilog-vcs-1 verilog-xsim verilog-verbose verilog-surefire-2 verilog-surefire-1 verilog-IES verilog-xl-2 verilog-xl-1 bash clang-include gcc-include gmake gnu lcc gcov-file gcov-header gcov-nomark gcov-called-line gcov-never-called) The original value of this variable as defined in my .emacs file was (bash clang-include gcc-include gmake gnu lcc gcov-file gcov-header gcov-nomark gcov-called-line gcov-never-called). Notice that "vhdl-directory" appears three times in this variable. In another long-running emacs session "vhdl-directory" appeared over 1400 times in this variable. I suspect that some code in vhdl-mode.el is repeatedly appending these vhdl strings without checking for duplicates. Of course when compilation-error-regexp-alist grows to thousands of entries it slows down compilation mode to a crawl. Paul