diff --git a/src/DI/Resolver.php b/src/DI/Resolver.php index dd51c490c..3e6afc3ff 100644 --- a/src/DI/Resolver.php +++ b/src/DI/Resolver.php @@ -354,12 +354,11 @@ private function normalizeEntity(Statement $statement): string|array|Reference|n } if ($item instanceof Definition) { - $name = current(array_keys($this->builder->getDefinitions(), $item, strict: true)); - if ($name === false) { - throw new ServiceCreationException(sprintf("Service '%s' not found in definitions.", $item->getName())); - } + if ($this->builder->getDefinition($item->getName()) !== $item) { + throw new ServiceCreationException(sprintf("Service '%s' does not match the expected service.", $item->getName())); - $item = new Reference($name); + } + $item = new Reference($item->getName()); } if ($item instanceof Reference) {