diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index c0870b7..b2c9e0b 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -1661,6 +1661,11 @@ class CookerParser(object):
         except StopIteration:
             self.shutdown()
             return False
+        except bb.BBHandledException as exc:
+            self.error += 1
+            logger.error('Failed to parse recipe: %s' % exc.recipe)
+            self.shutdown(clean=False)
+            return False
         except ParsingFailure as exc:
             self.error += 1
             logger.error('Unable to parse %s: %s' %
