https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105863
--- Comment #9 from Joseph S. Myers <jsm28 at gcc dot gnu.org> --- The most straightforward and most important case to optimize is the one where the #embed expansion lies entirely inside a single character array initializer (possibly with some integer constants before or after it in the initializer - whether coming from the prefix and suffix parameters to #embed or otherwise) - in which case the initializer can be converted internally to a STRING_CST. Cases that aren't within a character array initializer like that are harder to optimize (might require additional internal representation beyond the front end), and probably also less important to optimize initially.