Merge #19094: build: Only allow ASCII identifiers

399d84da3708719b063953107bab0f5f6493addb build: Only allow ASCII identifiers (Wladimir J. van der Laan)

Pull request description:

  While emoji and other symbols in C++ identifers (as accepted by newer compilers) are fun, they might create confusion during code review, for example because some symbols look very similar. Forbid such extended identifiers for now.

  This is done by providing `-fno-extended-identifiers`. Thanks to sipa for suggesting this compiler flag.

ACKs for top commit:
  practicalswift:
    ACK 399d84da3708719b063953107bab0f5f6493addb -- patch looks correct
  promag:
    ACK 399d84da3708719b063953107bab0f5f6493addb.
  jonatack:
    ACK 399d84da3708719b063953107bab0f5f6493ad
  fanquake:
    ACK 399d84da3708719b063953107bab0f5f6493addb - seems like a good sanity check to enable.

Tree-SHA512: 62bfbe8c7e0284ed505c2c8789c1ae74997202d90595f298c2ee1917e5d69fa9b7196a9404ba2cff61f3162b2bbb5616a1591bed3f0534c58617e22009291933
This commit is contained in:
fanquake 2020-05-29 08:04:16 +08:00 committed by Pasta
parent 7e573fbd52
commit 9b0d6dc9dd
No known key found for this signature in database
GPG Key ID: 52527BEDABE87984

View File

@ -425,6 +425,9 @@ if test "x$CXXFLAGS_overridden" = "xno"; then
AX_CHECK_COMPILE_FLAG([-Wdeprecated-copy],[NOWARN_CXXFLAGS="$NOWARN_CXXFLAGS -Wno-deprecated-copy"],,[[$CXXFLAG_WERROR]])
fi
dnl Don't allow extended (non-ASCII) symbols in identifiers. This is easier for code review.
AX_CHECK_COMPILE_FLAG([-fno-extended-identifiers],[[CXXFLAGS="$CXXFLAGS -fno-extended-identifiers"]],,[[$CXXFLAG_WERROR]])
enable_sse42=no
enable_sse41=no
enable_avx2=no