From 7ab07367d025b29794f99e26be98ee8496da157a Mon Sep 17 00:00:00 2001 From: Daniel Tschinder Date: Wed, 16 Jul 2014 15:46:36 +0200 Subject: [PATCH] Fix fatal error for empty yields --- .../PDepend/Source/Language/PHP/AbstractPHPParser.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/main/php/PDepend/Source/Language/PHP/AbstractPHPParser.php b/src/main/php/PDepend/Source/Language/PHP/AbstractPHPParser.php index 80002ad79..d6182fe42 100644 --- a/src/main/php/PDepend/Source/Language/PHP/AbstractPHPParser.php +++ b/src/main/php/PDepend/Source/Language/PHP/AbstractPHPParser.php @@ -6583,12 +6583,15 @@ private function parseYield() $yield = $this->builder->buildAstYieldStatement($token->image); - $yield->addChild($this->parseOptionalExpression()); + $node = $this->parseOptionalExpression(); + if ($node) { + $yield->addChild($node); - if ($this->tokenizer->peek() === Tokens::T_DOUBLE_ARROW) { - $this->consumeToken(Tokens::T_DOUBLE_ARROW); + if ($this->tokenizer->peek() === Tokens::T_DOUBLE_ARROW) { + $this->consumeToken(Tokens::T_DOUBLE_ARROW); - $yield->addChild($this->parseOptionalExpression()); + $yield->addChild($this->parseOptionalExpression()); + } } $this->consumeComments();