diff --git a/core/lib/Drupal/Core/Render/Element/Link.php b/core/lib/Drupal/Core/Render/Element/Link.php
index 535d9bb51b9be67ed34624bf5fb0102b7b07bcf3..3888c7938d043004ef2673650f0b27f24008c376 100644
--- a/core/lib/Drupal/Core/Render/Element/Link.php
+++ b/core/lib/Drupal/Core/Render/Element/Link.php
@@ -92,7 +92,7 @@ public static function preRenderLink($element) {
       /** @var \Drupal\Core\Utility\LinkGenerator $link_generator */
       $link_generator = \Drupal::service('link_generator');
       $generated_link = $link_generator->generate($element['#title'], $element['#url']->setOptions($options));
-      $element['#markup'] = $generated_link->getGeneratedLink();
+      $element['#markup'] = $generated_link;
       $generated_link->merge(BubbleableMetadata::createFromRenderArray($element))
         ->applyTo($element);
     }
diff --git a/core/modules/system/src/Tests/Theme/EngineTwigTest.php b/core/modules/system/src/Tests/Theme/EngineTwigTest.php
index a79c01dd630235c78229786a1256d0016736efbf..51d092d44b114918b3b31071b6aec2bd2c5bdd6a 100644
--- a/core/modules/system/src/Tests/Theme/EngineTwigTest.php
+++ b/core/modules/system/src/Tests/Theme/EngineTwigTest.php
@@ -77,6 +77,7 @@ public function testTwigLinkGenerator() {
     $link_generator = $this->container->get('link_generator');
 
 
+    $generated_url = Url::fromRoute('user.register', [], ['absolute' => TRUE])->toString(TRUE)->getGeneratedUrl();
     $expected = [
       'link via the linkgenerator: ' . $link_generator->generate('register', new Url('user.register', [], ['absolute' => TRUE])),
       'link via the linkgenerator: ' . $link_generator->generate('register', new Url('user.register', [], ['absolute' => TRUE, 'attributes' => ['foo' => 'bar']])),
@@ -84,6 +85,7 @@ public function testTwigLinkGenerator() {
       'link via the linkgenerator: ' . $link_generator->generate('register', new Url('user.register', [], ['attributes' => ['id' => 'kitten']])),
       'link via the linkgenerator: ' . $link_generator->generate('register', new Url('user.register', [], ['attributes' => ['class' => ['llama', 'kitten', 'panda']]])),
       'link via the linkgenerator: ' . $link_generator->generate(Markup::create('<span>register</span>'), new Url('user.register', [], ['absolute' => TRUE])),
+      'link via the linkgenerator: <a href="' . $generated_url . '"><span>register</span><svg></svg></a>',
     ];
 
     // Verify that link() has the ability to bubble cacheability metadata:
diff --git a/core/modules/system/tests/modules/twig_theme_test/templates/twig_theme_test.link_generator.html.twig b/core/modules/system/tests/modules/twig_theme_test/templates/twig_theme_test.link_generator.html.twig
index 5d20ce22b90290a6ba75c83c52525eae89e22f28..a836aec93c615721479a97ce6e3f95ba825a4a3c 100644
--- a/core/modules/system/tests/modules/twig_theme_test/templates/twig_theme_test.link_generator.html.twig
+++ b/core/modules/system/tests/modules/twig_theme_test/templates/twig_theme_test.link_generator.html.twig
@@ -5,3 +5,5 @@
 <div>link via the linkgenerator: {{ link('register', 'route:user.register', attributes) }}</div>
 {% set title %}<span>register</span>{% endset %}
 <div>link via the linkgenerator: {{ link(title, test_url) }}</div>
+{% set title %}<span>register</span><svg></svg>{% endset %}
+<div>link via the linkgenerator: {{ link(title, test_url) }}</div>