diff --git a/changelog_unreleased/handlebars/11899.md b/changelog_unreleased/handlebars/11899.md
new file mode 100644
index 000000000000..13b5dc9cc3c4
--- /dev/null
+++ b/changelog_unreleased/handlebars/11899.md
@@ -0,0 +1,23 @@
+#### Support Glimmer's named blocks (#11899 by @duailibe)
+
+Prettier already supported this feature, but it converted empty named blocks to self-closing, which is not supported by the Glimmer compiler.
+
+See: [Glimmer's named blocks](https://emberjs.github.io/rfcs/0460-yieldable-named-blocks.html).
+
+
+```jsx
+// Input
+
+ <:named>
+
+
+// Prettier stable
+
+ <:named />
+
+
+// Prettier main
+
+ <:named>
+
+```
diff --git a/src/language-handlebars/utils.js b/src/language-handlebars/utils.js
index d4831d6f1c70..22ae28ce8224 100644
--- a/src/language-handlebars/utils.js
+++ b/src/language-handlebars/utils.js
@@ -25,6 +25,7 @@ function isLastNodeOfSiblings(path) {
}
function isUppercase(string) {
+ return /^[A-Z]+$/.test(string);
return string.toUpperCase() === string;
}
diff --git a/tests/format/handlebars/basics/__snapshots__/jsfmt.spec.js.snap b/tests/format/handlebars/basics/__snapshots__/jsfmt.spec.js.snap
index 5cad2bbce4e0..987bfa99cf08 100644
--- a/tests/format/handlebars/basics/__snapshots__/jsfmt.spec.js.snap
+++ b/tests/format/handlebars/basics/__snapshots__/jsfmt.spec.js.snap
@@ -93,6 +93,30 @@ printWidth: 80
================================================================================
`;
+exports[`named-block.hbs format 1`] = `
+====================================options=====================================
+parsers: ["glimmer"]
+printWidth: 80
+ | printWidth
+=====================================input======================================
+
+ <:first-named-block>
+ <:second-named-block>
+ <:named-block-with-comment>{{! Do not convert to an empty element}}
+ <:named-block-with-content>Hello
+
+
+=====================================output=====================================
+
+ <:first-named-block>
+ <:second-named-block>
+ <:named-block-with-comment
+ >{{! Do not convert to an empty element}}
+ <:named-block-with-content>Hello
+
+================================================================================
+`;
+
exports[`nested-path.hbs format 1`] = `
====================================options=====================================
parsers: ["glimmer"]
diff --git a/tests/format/handlebars/basics/named-block.hbs b/tests/format/handlebars/basics/named-block.hbs
new file mode 100644
index 000000000000..442a5a5875e5
--- /dev/null
+++ b/tests/format/handlebars/basics/named-block.hbs
@@ -0,0 +1,6 @@
+
+ <:first-named-block>
+ <:second-named-block>
+ <:named-block-with-comment>{{! Do not convert to an empty element}}
+ <:named-block-with-content>Hello
+