<div dir="ltr">Hello, folks! (And sorry in advance if i'm writing to the wrong address with my question.)<br><br>Recently i've come across a clang warning next to this simple line of code:<br><pre class="gmail-lang-cpp gmail-s-code-block" style="font-size:13px;margin-top:0px;padding:12px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:1.30769;vertical-align:baseline;box-sizing:inherit;width:auto;max-height:600px;overflow:auto;border-radius:5px"><code class="gmail-hljs gmail-language-cpp" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit;background-color:transparent;white-space:inherit"><span class="gmail-hljs-keyword" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit">auto</span> message = <span class="gmail-hljs-string" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit">u8"Текст"</span>;</code></pre>which says as follows:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span style="color:rgb(82,89,96);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Liberation Sans",sans-serif;font-size:15px">type of UTF-8 string literal will change from array of const char to array of const char8_t in C++20</span></blockquote><br>That is a warning which comes <font face="arial, sans-serif">with <span style="color:rgb(35,38,41)"> </span><a href="https://clang.llvm.org/docs/DiagnosticsReference.html#wc-20-compat" rel="nofollow noreferrer" style="margin:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;vertical-align:baseline;box-sizing:inherit">-W-c++20-compat flag</a><span style="color:rgb(35,38,41)"> and the answer I'm looking for is how to properly make this warning disappear (without suppressing or disabling it). I tried a few approaches from th</span></font><span style="color:rgb(35,38,41);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Liberation Sans",sans-serif">e </span><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1423r2.html#remediation" rel="nofollow noreferrer" style="margin:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Liberation Sans",sans-serif;vertical-align:baseline;box-sizing:inherit">P1423R2</a><span style="color:rgb(35,38,41)"><font face="-apple-system, BlinkMacSystemFont, Segoe UI, Liberation Sans, sans-serif"> document, including:</font><br><ul style="font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Liberation Sans",sans-serif"><li><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1423r2.html#conversion_fns" rel="nofollow noreferrer" style="margin:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Liberation Sans",sans-serif;vertical-align:baseline;box-sizing:inherit">explicit conversion function approach</a><span style="color:rgb(35,38,41);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Liberation Sans",sans-serif"><br></span></li><li><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1423r2.html#emulate" rel="nofollow noreferrer" style="margin:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Liberation Sans",sans-serif;vertical-align:baseline;box-sizing:inherit">emulation with macroses</a><span style="color:rgb(35,38,41);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Liberation Sans",sans-serif"><br></span></li><li><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1423r2.html#reinterpret_cast">reinterpret_cast u8 literals to char</a><br></li></ul><div style=""><font face="-apple-system, BlinkMacSystemFont, Segoe UI, Liberation Sans, sans-serif">Unfortunately neither seems to work. The warning persists probably just because of the fact of having </font><font face="monospace">u8</font><font face="-apple-system, BlinkMacSystemFont, Segoe UI, Liberation Sans, sans-serif"> literal no matter whether i have overloaded functions, wrap it with macroses or try to cast it to "standard" </font><font face="monospace">char</font><font face="-apple-system, BlinkMacSystemFont, Segoe UI, Liberation Sans, sans-serif">. I wonder if i'm missing something? Or the only suitable solution for this warning to vanish is to not use </font><font face="monospace">u8</font><font face="-apple-system, BlinkMacSystemFont, Segoe UI, Liberation Sans, sans-serif"> literals in my code?<br><br>Thanks in advance.</font></div></span></div>