Yes, this topic may look as asked already a hundred times, but what I am asking is very different.
Please, don't let me be misunderstood: template recursion can be great and the only way for some idioms when used in C++03, but the problem may arise when using in MSVS 2017/2019 compiler and getting the dreadful fatal error C1202: recursive type or function dependency context too complex.
I know that gcc and clang manage much better recursion than MSVS, but this time the compiler is a contractual subject and can not be changed.
I began using boost::hana::string, but with complex strings (over 2000 characters) that error arises.
I wonder if there is some way to replicate the behaviour of BOOST_HANA_STRING macro (basically it takes a string and converts it into a char sequence, or wchar depending of input string) but getting rid of recursion.
I guess that the price to pay is to use C++17 exclusively, by using fold instead, but for me this is affordable.
By the way, please do not provide operator""_cs solutions, due that MSVS is neither compatible with such gcc extension.
Pseudocode of what I want to achieve:
STRING("Hello") => my_static_string<char, 'H', 'e', 'l', 'l', 'o'>