https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67565
--- Comment #5 from Tom Honermann <tom at honermann dot net> --- Nice, thanks! Using gcc r238587, I get the times below for the examples in this report. All cases are dramatically improved. Unless there is some other known issue not captured in the discussion here, it looks to me like this issue can be resolved. For the example in comment 0: $ time g++ -std=c++1z -fconcepts main.cpp real 0m0.051s user 0m0.040s sys 0m0.008s For the example in comment 2: $ time g++ -c -std=c++1z -fconcepts t.cpp real 0m0.009s user 0m0.004s sys 0m0.000s $ time g++ -c -std=c++1z -fconcepts t.cpp -DGO_FAST1 real 0m0.009s user 0m0.004s sys 0m0.000s $ time g++ -c -std=c++1z -fconcepts t.cpp -DGO_FAST2 real 0m0.009s user 0m0.000s sys 0m0.004s $ time g++ -c -std=c++1z -fconcepts t.cpp -DGO_SLOWER1 real 0m0.009s user 0m0.000s sys 0m0.004s Additionally, my builds of Text View [1] now complete in 0m26.140s improved from 1m35.837s. [1]: https://github.com/tahonermann/text_view