protected function doWalk(O\Expression $expression) { $caught = false; try { return parent::doWalk($expression); } catch (TypeException $exception) { $caught = true; } catch (\ReflectionException $exception) { $caught = true; } if ($caught) { $this->analysis[$expression] = $this->typeSystem->getNativeType(INativeType::TYPE_MIXED); return $expression; } }