From a87496addd9160300837aa50193f4798c6f1d251 Mon Sep 17 00:00:00 2001
From: Christoph Reiter <reiter.christoph@gmail.com>
Date: Mon, 28 May 2018 09:32:19 +0200
Subject: [PATCH] Don't raise StopIteration in generators, no longer allowed
with Python 3.7. Fixes #3622
Raising StopIteration from a generator has been deprecated with Python 3.5 and is now
an error with Python 3.7: https://docs.python.org/3.8/library/exceptions.html#StopIteration
Just use return instead.
---
mesonbuild/compilers/compilers.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mesonbuild/compilers/compilers.py b/mesonbuild/compilers/compilers.py
index 762e7c569..56a0ab2b8 100644
--- a/mesonbuild/compilers/compilers.py
+++ b/mesonbuild/compilers/compilers.py
@@ -796,7 +796,7 @@ def compile(self, code, extra_args=None, mode='link', want_output=False):
mlog.debug('Cached compiler stdout:\n', p.stdo)
mlog.debug('Cached compiler stderr:\n', p.stde)
yield p
- raise StopIteration
+ return
try:
with tempfile.TemporaryDirectory() as tmpdirname:
if isinstance(code, str):