The latter seems a lot more supported publicly than the former. What was its inspiration? What are their differences? Is the simple variant meant for general use? Or should we conditionalize string processing only with StringLiteralExprSyntax.
SimpleStringLiteralExprSyntax is only used in a couple special places in the language grammar where a string literal is allowed but not raw strings or string interpolations: AvailabilityLabeledArgumentSyntax (like @available(..., renamed: "this string") and PoundSourceLocationArgumentsSyntax (#sourceLocation(file: "this string")).
If your macro doesn't process either of those, then you should never have to consider it.
3 Likes