mirror of
https://github.com/python/cpython.git
synced 2025-07-09 20:35:26 +00:00
gh-81057: Add a CI Check for New Unsupported C Global Variables (gh-102506)
This will keep us from adding new unsupported (i.e. non-const) C global variables, which would break interpreter isolation. FYI, historically it is very uncommon for new global variables to get added. Furthermore, it is rare for new code to break the c-analyzer. So the check should almost always pass unnoticed. Note that I've removed test_check_c_globals. A test wasn't a great fit conceptually and was super slow on debug builds. A CI check is a better fit. This also resolves gh-100237. https://github.com/python/cpython/issues/81057
This commit is contained in:
parent
a703f743db
commit
1ff81c0cb6
8 changed files with 90 additions and 54 deletions
|
@ -115,15 +115,15 @@ def converted_error(tool, argv, filename):
|
|||
def convert_error(tool, argv, filename, stderr, rc):
|
||||
error = (stderr.splitlines()[0], rc)
|
||||
if (_expected := is_os_mismatch(filename, stderr)):
|
||||
logger.debug(stderr.strip())
|
||||
logger.info(stderr.strip())
|
||||
raise OSMismatchError(filename, _expected, argv, error, tool)
|
||||
elif (_missing := is_missing_dep(stderr)):
|
||||
logger.debug(stderr.strip())
|
||||
logger.info(stderr.strip())
|
||||
raise MissingDependenciesError(filename, (_missing,), argv, error, tool)
|
||||
elif '#error' in stderr:
|
||||
# XXX Ignore incompatible files.
|
||||
error = (stderr.splitlines()[1], rc)
|
||||
logger.debug(stderr.strip())
|
||||
logger.info(stderr.strip())
|
||||
raise ErrorDirectiveError(filename, argv, error, tool)
|
||||
else:
|
||||
# Try one more time, with stderr written to the terminal.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue