diff -u b/core/lib/Drupal/Core/StringTranslation/TranslationManager.php b/core/lib/Drupal/Core/StringTranslation/TranslationManager.php --- b/core/lib/Drupal/Core/StringTranslation/TranslationManager.php +++ b/core/lib/Drupal/Core/StringTranslation/TranslationManager.php @@ -149,7 +149,7 @@ // and return the translation as a string for backward compatibility // purposes. // @todo remove this temporary workaround. - if (0 === strpos($arg_key, '!')) { + if (0 === strpos($arg_key, '!') && !SafeMarkup::isSafe($args[$arg_key])) { $safe = FALSE; break; }