<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/142367>142367</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
AddNamedMetadata fails for strings in the C interface
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
demoitem
</td>
</tr>
</table>
<pre>
Calling this via the C interface
LLVMAddNamedMetadataOperand(M, "llvm.ident",
LLVMMetadataAsValue(LLVMGetModuleContext(M),
LLVMMDStringInContext2(LLVMGetModuleContext(M), "foo", 3)));
produces an assert
Core.cpp:1094: llvm::MDNode* extractMDNode(llvm::MetadataAsValue*): Assertion `(isa<MDNode>(MD) || isa<ConstantAsMetadata>(MD)) && "Expected a metadata node or a canonicalized constant"' failed.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyEUsGK6zgQ_Jr2pZmgtJzYOfigcSbLwmT2sDB3RWonWhQpSPLsvPf1D9sJb5jLA4NBXVVdJZXO2Z0DcwebZ9jsKz2WS0yd5Wt0ha_VKdofXa-9d-GM5eIyfjiN5cLYowuF06ANg1AgFL6-vh-VtW_6yvbIRVtd9D83TjpYoPYI1CMQef9xXTnLoQARUP9gPhgqv2s_MlA7nf7F5Rjt6LmPofBnWYR2X3n7f0ty4fx3uEPoj9TJxhDjsh_lfDh_8nmJckvRjoYz6oA6Z04Fl0EfE6_M7QZSrcWuBqlwygNSgVTH_Vu0DKSQP0vSpjwO2i-Y7ynVvFehmte4GBC2Aqh1WYPs7wryZTK_B9ohND00PS7jPoZcdCgqP3S_QGc0bYG2U96XzxubwhY1Xu9YDNEyxoQajQ4xOKO9-8kWzV12vqAGB-0829VyAyBUZTtpd3KnK-7WTd22W9mKurp0urVGWzKSrBjINJu14ZNhQ4NtW72pK9eRoI3YClqvpRD1SjbDYJvG2Jql3TBDLfiqnV_NLYnpXLmcR-7WNcltU3l9Yp_nrhIF_h_n6WRzs69SN5GeTuM5Qy28yyX_limueO6-t3OOlnGICfNcoowufG93NSbfXUq55ekJ6QB0OLtyGU8rE69Ah_lxl9_TLcX_2BSgw-wsAx3u1j86-hUAAP__H28SeA">