Skip to content

Replace regex implementation using C++11

CMake's current regex infrastructure is based on an ancient third-party implementation and has some limitations:

Fortunately we now use C++11 which provides the <regex> feature. We should investigate using it as a replacement.

The main challenge is compatibility. I'm not sure whether any of the standard regex syntax modes exactly matches CMake's regex syntax. Since it is public-facing, the regex syntax must be preserved. Therefore we must choose one of the standard regex syntax modes along with an input expression transformation to make the semantics exactly match.

Edited by Brad King
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information