<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:"Segoe UI";
        panose-1:2 11 5 2 4 2 4 2 2 3;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.pl-k
        {mso-style-name:pl-k;}
span.pl-en
        {mso-style-name:pl-en;}
span.given-name
        {mso-style-name:given-name;}
span.family-name
        {mso-style-name:family-name;}
span.value
        {mso-style-name:value;}
span.EmailStyle25
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">I don’t know of any plans to implement this functionality, but I agree that the least we can do is provide a function body that asserts or calls something like report_fatal_error.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
<p class="MsoNormal">                Chris Tetreault<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> llvm-dev <llvm-dev-bounces@lists.llvm.org> <b>On Behalf Of
</b>Muiez Ahmed via llvm-dev<br>
<b>Sent:</b> Wednesday, October 13, 2021 1:33 PM<br>
<b>To:</b> llvm-dev@lists.llvm.org<br>
<b>Subject:</b> [llvm-dev] [libcxx] Unimplemented path functions inquiry<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p align="center" style="text-align:center"><strong><span style="font-size:10.5pt;font-family:"Arial",sans-serif;color:black;background:yellow">WARNING:</span></strong><span style="font-size:10.5pt;font-family:"Arial",sans-serif;color:black;background:yellow">
 This email originated from outside of Qualcomm. Please be wary of any links or attachments, and do not enable macros.</span><o:p></o:p></p>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Hi,<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">I hope this email finds you well. I have an inquiry about the following unimplemented functions declared in `libcxx/include/filesystem`:<o:p></o:p></span></p>
</div>
<div>
<table class="MsoNormalTable" border="0" cellspacing="0" cellpadding="0" style="background:white;border-collapse:collapse;box-sizing: border-box;border-spacing: 0px;tab-size: 8;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<tbody>
<tr style="box-sizing: border-box">
<td valign="top" style="padding:0in 7.5pt 0in 7.5pt;box-sizing: border-box;overflow-wrap: normal;overflow:visible" id="LC959">
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
</td>
</tr>
<tr style="box-sizing: border-box">
<td width="50" nowrap="" valign="top" style="width:37.5pt;padding:0in 7.5pt 0in 7.5pt">
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal" align="right" style="text-align:right;line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"> <o:p></o:p></span></p>
</td>
<td valign="top" style="padding:0in 7.5pt 0in 7.5pt;box-sizing: border-box;overflow-wrap: normal;overflow:visible" id="LC960">
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E">// TODO Implement locale conversions.<o:p></o:p></span></p>
</div>
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal" style="line-height:15.0pt"><span class="pl-k"><span style="font-size:9.0pt;font-family:Consolas;color:#D73A49">template<o:p></o:p></span></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><</span><span class="pl-k"><span style="font-size:9.0pt;font-family:Consolas;color:#D73A49">class</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p></o:p></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span class="pl-en"><span style="font-size:9.0pt;font-family:Consolas;color:#6F42C1">_Source</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E">,<o:p></o:p></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span class="pl-k"><span style="font-size:9.0pt;font-family:Consolas;color:#D73A49">class</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"> = _EnableIfPathable<_Source,<o:p></o:p></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span class="pl-k"><span style="font-size:9.0pt;font-family:Consolas;color:#D73A49">void</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E">> ><o:p></o:p></span></p>
</div>
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
</td>
</tr>
<tr style="box-sizing: border-box">
<td width="50" nowrap="" valign="top" style="width:37.5pt;padding:0in 7.5pt 0in 7.5pt">
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal" align="right" style="text-align:right;line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"> <o:p></o:p></span></p>
</td>
<td valign="top" style="padding:0in 7.5pt 0in 7.5pt;box-sizing: border-box;overflow-wrap: normal;overflow:visible" id="LC961">
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span class="pl-en"><span style="font-size:9.0pt;font-family:Consolas;color:#6F42C1">path</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E">(</span><span class="pl-k"><span style="font-size:9.0pt;font-family:Consolas;color:#D73A49">const</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E">
 _Source& __src,<o:p></o:p></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span class="pl-k"><span style="font-size:9.0pt;font-family:Consolas;color:#D73A49">const</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"> locale& __loc, format = format::auto_format);<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
</td>
</tr>
<tr style="box-sizing: border-box">
<td width="50" nowrap="" valign="top" style="width:37.5pt;padding:0in 7.5pt 0in 7.5pt">
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal" align="right" style="text-align:right;line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"> <o:p></o:p></span></p>
</td>
<td valign="top" style="padding:0in 7.5pt 0in 7.5pt;box-sizing: border-box;overflow-wrap: normal;overflow:visible" id="LC962">
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span class="pl-k"><span style="font-size:9.0pt;font-family:Consolas;color:#D73A49">template<o:p></o:p></span></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><</span><span class="pl-k"><span style="font-size:9.0pt;font-family:Consolas;color:#D73A49">class</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p></o:p></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span class="pl-en"><span style="font-size:9.0pt;font-family:Consolas;color:#6F42C1">_InputIt</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E">><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
</td>
</tr>
<tr style="box-sizing: border-box">
<td width="50" nowrap="" valign="top" style="width:37.5pt;padding:0in 7.5pt 0in 7.5pt">
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal" align="right" style="text-align:right;line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"> <o:p></o:p></span></p>
</td>
<td valign="top" style="padding:0in 7.5pt 0in 7.5pt;box-sizing: border-box;overflow-wrap: normal;overflow:visible" id="LC963">
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span class="pl-en"><span style="font-size:9.0pt;font-family:Consolas;color:#6F42C1">path</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E">(_InputIt __first, _InputIt _last,<o:p></o:p></span></p>
<p class="MsoNormal" style="line-height:15.0pt"><span class="pl-k"><span style="font-size:9.0pt;font-family:Consolas;color:#D73A49">const</span></span><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"> locale& __loc,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
</td>
</tr>
<tr style="box-sizing: border-box">
<td width="50" nowrap="" valign="top" style="width:37.5pt;padding:0in 7.5pt 0in 7.5pt">
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal" align="right" style="text-align:right;line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"> <o:p></o:p></span></p>
</td>
<td valign="top" style="padding:0in 7.5pt 0in 7.5pt;box-sizing: border-box;overflow-wrap: normal;overflow:visible" id="LC964">
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E">format = format::auto_format);<o:p></o:p></span></p>
</div>
<p class="MsoNormal" style="line-height:15.0pt"><span style="font-size:9.0pt;font-family:Consolas;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:#24292E"><o:p> </o:p></span></p>
</td>
</tr>
</tbody>
</table>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">In particular, there is a TODO (introduced in the following commit 998a5c88312066fcc2b2de1358edc76587611354) that says "Implement locale conversions". Since these functions are
 not implemented, they are causing a link time error on z/OS. Hence, is there a plan to implement them? Or is there a way to cause compiler time errors if those functions are used? If not, should we leave it as is or provide a definition that asserts (to be
 more user friendly)?. <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Best regards,<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Muiez<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif"> <o:p></o:p></span></p>
</div>
<div>
<div>
<div>
<div>
<table class="MsoNormalTable" border="0" cellspacing="0" cellpadding="0" width="650" style="width:487.5pt">
<tbody>
<tr>
<td valign="bottom" style="padding:0in 0in 0in 0in">
<div style="margin-bottom:6.0pt">
<p class="MsoNormal"><span class="given-name"><b><span style="font-size:12.0pt;font-family:"Verdana",sans-serif;color:#888888">Muiez</span></b></span><b><span style="font-size:12.0pt;font-family:"Verdana",sans-serif;color:#888888"> <span class="family-name">Ahmed</span></span></b><span style="font-size:7.0pt;font-family:"Verdana",sans-serif;color:black"><br>
</span><span style="font-size:9.0pt;font-family:"Verdana",sans-serif;color:black">Software Developer</span><span style="font-size:7.0pt;font-family:"Verdana",sans-serif;color:black"><o:p></o:p></span></p>
</div>
</td>
<td valign="top" style="padding:0in 0in 0in 0in">
<p class="MsoNormal"><span style="font-size:7.0pt;font-family:"Verdana",sans-serif;color:black"> <o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><b><span style="font-size:12.0pt;font-family:"Arial",sans-serif;color:#7C7C5F;display:none"><o:p> </o:p></span></b></p>
<table class="MsoNormalTable" border="0" cellspacing="0" cellpadding="0" width="650" style="width:487.5pt">
<tbody>
<tr>
<td valign="top" style="padding:0in 0in 0in 0in">
<p class="MsoNormal"><span style="font-size:7.0pt;font-family:"Arial",sans-serif;color:black"><br>
</span><b><span style="font-size:7.0pt;font-family:"Arial",sans-serif;color:#466BB0">E-mail:</span></b><span style="font-size:7.0pt;font-family:"Arial",sans-serif;color:black"> <a href="mailto:muiez@ibm.com" target="_blank"><span class="value"><span style="color:#5F5F5F">muiez@ibm.com</span></span></a><o:p></o:p></span></p>
</td>
<td valign="top" style="padding:0in 0in 0in 0in">
<p class="MsoNormal" align="right" style="text-align:right"><span style="font-size:7.0pt;font-family:"Arial",sans-serif;color:black"><img border="0" id="_x0000_i1025" src="https://esign.webmaster.ibm.com/img/ibm2.gif" alt="IBM"></span><span style="font-size:7.0pt;font-family:"Arial",sans-serif;color:black"><br>
 <o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
</div>
<div style="margin-top:7.5pt">
<div>
<p class="MsoNormal"><span style="font-size:8.0pt;font-family:"Arial",sans-serif"> <o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
</div>
</div>
</body>
</html>