<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<p>We should tweak jextract not to warn in this case, as there's not
much jextract (or the user) can do with this info.</p>
<p><br>
</p>
<p>Maurizio<br>
</p>
<p><br>
</p>
<div class="moz-cite-prefix">On 22/07/2024 06:02, Sundararajan
Athijegannathan wrote:<br>
</div>
<blockquote type="cite" cite="mid:DM4PR10MB6255DA53736AF379C655BE2AEAA82@DM4PR10MB6255.namprd10.prod.outlook.com">
<style type="text/css" style="display:none;">P {margin-top:0;margin-bottom:0;}</style>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Hi,</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
void* as return type is supported. But, as you found, that
header typedefs void as a type and then returns pointer to that.</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Minimal code of that pattern is as follows:</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
typedef void Foo;</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Foo* func(int);</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
jextract generates MemorySegment as return type for "func"
method correctly. jextract's typedef handling code that prints
the warning. Nothing is generated for "Foo" itself (as Foo is
"void" type and so there is no equivalent java layout can be
defined for it). You can ignore that meaning and the generated
binding will work as expected.</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Source info (line number etc) are not retained in jextract's
representation of clang CXCursor and CXType objects. As of now,
it is not possible to print source locations post parsing. While
parsing clang diagnostics, if any, are printed with source info.</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Thanks</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Sundar</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>From:</b>
jextract-dev <a class="moz-txt-link-rfc2396E" href="mailto:jextract-dev-retn@openjdk.org"><jextract-dev-retn@openjdk.org></a> on behalf
of Adrian Trapletti <a class="moz-txt-link-rfc2396E" href="mailto:a.trapletti@ustermetrics.com"><a.trapletti@ustermetrics.com></a><br>
<b>Sent:</b> 21 July 2024 02:36<br>
<b>To:</b> <a class="moz-txt-link-abbreviated" href="mailto:jextract-dev@openjdk.org">jextract-dev@openjdk.org</a>
<a class="moz-txt-link-rfc2396E" href="mailto:jextract-dev@openjdk.org"><jextract-dev@openjdk.org></a><br>
<b>Subject:</b> Re: type Void is not supported</font>
<div> </div>
</div>
<div>
<div dir="auto">
<div>
<div>Hi, </div>
<div dir="auto"><br>
</div>
<div dir="auto">The reason for the warnings seem to be </div>
<div dir="auto"><a href="https://github.com/oxfordcontrol/Clarabel.cpp/blob/main/include%2Fc%2FDefaultSolver.h#L17-L24" moz-do-not-send="true" class="moz-txt-link-freetext">https://github.com/oxfordcontrol/Clarabel.cpp/blob/main/include%2Fc%2FDefaultSolver.h#L17-L24</a><br>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">Otherwise the generated bindings look good. </div>
<div dir="auto"><br>
</div>
<div dir="auto">Maybe a nice to have would be that jextract
prints the line number that is responsible for a warning
together with the warning?</div>
<div dir="auto"><br>
</div>
<div dir="auto">Thanks and best regards,</div>
<div dir="auto">Adrian </div>
<div><br>
</div>
<div data-smartmail="gmail_signature">Dr. Adrian Trapletti<br>
CEO<br>
<br>
Uster Metrics GmbH <br>
Steinstrasse 9b<br>
8610 Uster, Switzerland<br>
<br>
P +41 32 512 83 63<br>
M +41 79 103 71 31<br>
<br>
<a href="mailto:a.trapletti@ustermetrics.com" moz-do-not-send="true" class="moz-txt-link-freetext">a.trapletti@ustermetrics.com</a><br>
<a href="http://www.ustermetrics.com" moz-do-not-send="true">www.ustermetrics.com</a><br>
<br>
This email message including any attachments is
confidential and may be privileged. It is intended solely
for the use of the individual or entity named on this
message. It is provided for informational purposes only
and does not constitute an offer or invitation to
subscribe for or purchase any services or products. Any
form of disclosure, copying, modification or distribution
is unauthorized. If you are not the intended recipient,
you are requested to please notify the sender immediately
and delete the message including any attachments from your
computer system network. Email transmission cannot be
guaranteed to be secure or error free as information could
be modified. We therefore do not accept responsibility or
liability as to the completeness or accuracy of the
information contained in this message or any attachments.</div>
<br>
<div class="x_gmail_quote">
<div dir="ltr" class="x_gmail_attr">On Sat, Jul 20, 2024,
19:12 Adrian Trapletti <<a href="mailto:a.trapletti@ustermetrics.com" moz-do-not-send="true" class="moz-txt-link-freetext">a.trapletti@ustermetrics.com</a>>
wrote:<br>
</div>
<blockquote class="x_gmail_quote" style="margin:0px 0px 0px 0.8ex; border-left:1px solid rgb(204,204,204); padding-left:1ex">
<div dir="ltr">Hi,
<div><br>
</div>
<div>I am trying to generate bindings for <a href="https://github.com/oxfordcontrol/Clarabel.cpp/blob/main/include/Clarabel.h" target="_blank" rel="noreferrer" moz-do-not-send="true" class="moz-txt-link-freetext">https://github.com/oxfordcontrol/Clarabel.cpp/blob/main/include/Clarabel.h</a></div>
<div><br>
</div>
<div>Jextract issues the following warnings</div>
<div><br>
</div>
<div>WARNING: Skipping ClarabelDefaultSolver_f64 (type
Void is not supported)<br>
WARNING: Skipping ClarabelDefaultSolver_f32 (type
Void is not supported)<br>
WARNING: Skipping ClarabelDefaultSolver (type Void
is not supported)<br>
</div>
<div><br>
</div>
<div>For me it seems that the returned void pointer is
not supported <a href="https://github.com/oxfordcontrol/Clarabel.cpp/blob/main/include/c/DefaultSolver.h#L29" target="_blank" rel="noreferrer" moz-do-not-send="true" class="moz-txt-link-freetext">
https://github.com/oxfordcontrol/Clarabel.cpp/blob/main/include/c/DefaultSolver.h#L29</a></div>
<div><br>
</div>
<div>Is this a known issue? Is there a workaround?</div>
<div><br>
</div>
<div>Thank you and best regards</div>
<div>Adrian</div>
<div><br clear="all">
<div>
<div dir="ltr" class="x_gmail_signature" data-smartmail="gmail_signature">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div><font size="2" face="arial, helvetica, sans-serif" color="#000000"><b>Dr. Adrian
Trapletti</b></font></div>
<div><font size="2" face="arial, helvetica, sans-serif" color="#000000">CEO</font></div>
<div><font size="2" face="arial, helvetica, sans-serif" color="#000000"><br>
</font></div>
<div><span style="color:rgb(0,0,0); font-family:arial,helvetica,sans-serif"><b>Uster
Metrics GmbH </b></span><span style="color:rgb(0,0,0); font-family:arial,helvetica,sans-serif">|
Steinstrasse 9b, </span><span style="color:rgb(0,0,0); font-family:arial,helvetica,sans-serif">8610
Uster, </span><span style="color:rgb(0,0,0); font-family:arial,helvetica,sans-serif">Switzerland</span><br>
</div>
<div><font size="2" face="arial, helvetica, sans-serif" color="#000000">P +41 32 512 83 63
| </font><span style="color:rgb(0,0,0); font-family:arial,helvetica,sans-serif; font-size:small">M
+41 79 103 71 31</span></div>
<div><a href="mailto:a.trapletti@ustermetrics.com" target="_blank" rel="noreferrer" style="font-family:arial,helvetica,sans-serif; font-size:small" moz-do-not-send="true" class="moz-txt-link-freetext">a.trapletti@ustermetrics.com</a> | <a href="http://www.ustermetrics.com" target="_blank" rel="noreferrer" style="font-family:arial,helvetica,sans-serif; font-size:small" moz-do-not-send="true">www.ustermetrics.com</a></div>
<div><font size="2" face="arial, helvetica, sans-serif" color="#000000"><br>
</font></div>
<div><font size="2" face="arial, helvetica, sans-serif" color="#000000"><br>
</font></div>
<div><font color="#999999"><font size="1" face="arial, helvetica, sans-serif">This email message including any
attachments is
confidential and may </font><span style="font-family:arial,helvetica,sans-serif; font-size:x-small">be
privileged. It is intended
solely for the use of the
individual or </span><span style="font-family:arial,helvetica,sans-serif; font-size:x-small">entity
named on this message. It
is provided for
informational purposes </span><span style="font-family:arial,helvetica,sans-serif; font-size:x-small">only
and does not constitute an
offer or invitation to
subscribe for </span><span style="font-family:arial,helvetica,sans-serif; font-size:x-small">or
purchase any services or
products. Any form of
disclosure, copying, </span><font size="1" face="arial, helvetica, sans-serif">modification or distribution is
unauthorized. If you are
not the </font><span style="font-family:arial,helvetica,sans-serif; font-size:x-small">intended
recipient, you are
requested to please notify
the sender </span><span style="font-family:arial,helvetica,sans-serif; font-size:x-small">immediately
and delete the message
including any attachments
from </span><span style="font-family:arial,helvetica,sans-serif; font-size:x-small">your
computer system network. </span></font><font style="color:rgb(153,153,153)" size="1" face="arial, helvetica, sans-serif">Email transmission cannot be
guaranteed to be secure or
error free as </font><span style="color:rgb(153,153,153); font-family:arial,helvetica,sans-serif; font-size:x-small">information
could be modified. We
therefore do not accept
responsibility </span><span style="color:rgb(153,153,153); font-family:arial,helvetica,sans-serif; font-size:x-small">or
liability as to the
completeness or accuracy of
the information </span><span style="color:rgb(153,153,153); font-size:x-small; font-family:arial,helvetica,sans-serif">contained
in this message or any
attachments.</span></div>
<div><font face="arial, helvetica, sans-serif"><br>
<br>
<br>
</font></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</blockquote>
</body>
</html>