diff --git a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/Descriptor.php b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/Descriptor.php
index ed8a9118b4309..ab77fbf23b0c0 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/Descriptor.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/Descriptor.php
@@ -261,7 +261,7 @@ protected function sortTaggedServicesByPriority(array $services): array
{
$maxPriority = [];
foreach ($services as $service => $tags) {
- $maxPriority[$service] = 0;
+ $maxPriority[$service] = \PHP_INT_MIN;
foreach ($tags as $tag) {
$currentPriority = $tag['priority'] ?? 0;
if ($maxPriority[$service] < $currentPriority) {
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/ObjectsProvider.php b/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/ObjectsProvider.php
index e44fcf6395164..05031fa7fcfb6 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/ObjectsProvider.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/ObjectsProvider.php
@@ -171,6 +171,7 @@ public static function getContainerDefinitionsWithPriorityTags()
$definition1 = new Definition('Full\\Qualified\\Class1');
$definition2 = new Definition('Full\\Qualified\\Class2');
$definition3 = new Definition('Full\\Qualified\\Class3');
+ $definition4 = new Definition('Full\\Qualified\\Class4');
return [
'definition_1' => $definition1
@@ -199,6 +200,13 @@ public static function getContainerDefinitionsWithPriorityTags()
->setAbstract(false)
->addTag('tag1', ['attr1' => 'val1', 'attr2' => 'val2', 'priority' => 0])
->addTag('tag1', ['attr3' => 'val3', 'priority' => 40]),
+ 'definition_4' => $definition4
+ ->setPublic(true)
+ ->setSynthetic(true)
+ ->setFile('/path/to/file')
+ ->setLazy(false)
+ ->setAbstract(false)
+ ->addTag('tag1', ['priority' => 0]),
];
}
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.json
index fe47af88b8d2d..a9d9697847fdb 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.json
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.json
@@ -63,6 +63,25 @@
}
]
},
+ "definition_4": {
+ "class": "Full\\Qualified\\Class4",
+ "public": true,
+ "synthetic": true,
+ "lazy": false,
+ "shared": true,
+ "abstract": false,
+ "autowire": false,
+ "autoconfigure": false,
+ "file": "\/path\/to\/file",
+ "tags": [
+ {
+ "name": "tag1",
+ "parameters": {
+ "priority": 0
+ }
+ }
+ ]
+ },
"definition_2": {
"class": "Full\\Qualified\\Class2",
"public": true,
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.md b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.md
index 4ed3e82f0297b..8c0fef6aa3bea 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.md
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.md
@@ -44,6 +44,20 @@ Definitions
- Attr2: val2
- Tag: `tag2`
+### definition_4
+
+- Class: `Full\Qualified\Class4`
+- Public: yes
+- Synthetic: yes
+- Lazy: no
+- Shared: yes
+- Abstract: no
+- Autowired: no
+- Autoconfigured: no
+- File: `/path/to/file`
+- Tag: `tag1`
+ - Priority: 0
+
### definition_2
- Class: `Full\Qualified\Class2`
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.txt b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.txt
index 3cbca0110bcce..7884a05c2a690 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.txt
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.txt
@@ -9,6 +9,7 @@
" val1 val2 0
definition_1 val1 30 Full\Qualified\Class1
" val2
+ definition_4 0 Full\Qualified\Class4
definition_2 val1 val2 -20 Full\Qualified\Class2
-------------- ------- ------- ---------- ------- -----------------------
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.xml
index 8e886bed25579..2e00c99955257 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_priority_tag.xml
@@ -29,6 +29,13 @@
+
+
+
+ 0
+
+
+