<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<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>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> jextract-dev <jextract-dev-retn@openjdk.org> on behalf of Adrian Trapletti <a.trapletti@ustermetrics.com><br>
<b>Sent:</b> 21 July 2024 02:36<br>
<b>To:</b> jextract-dev@openjdk.org <jextract-dev@openjdk.org><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">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">a.trapletti@ustermetrics.com</a><br>
<a href="http://www.ustermetrics.com">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">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">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">
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 face="arial, helvetica, sans-serif" size="2" color="#000000"><b>Dr. Adrian Trapletti</b></font></div>
<div><font face="arial, helvetica, sans-serif" size="2" color="#000000">CEO</font></div>
<div><font face="arial, helvetica, sans-serif" size="2" 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 face="arial, helvetica, sans-serif" size="2" 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">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">www.ustermetrics.com</a></div>
<div><font face="arial, helvetica, sans-serif" size="2" color="#000000"><br>
</font></div>
<div><font face="arial, helvetica, sans-serif" size="2" color="#000000"><br>
</font></div>
<div><font color="#999999"><font face="arial, helvetica, sans-serif" size="1">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 face="arial, helvetica, sans-serif" size="1">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 face="arial, helvetica, sans-serif" size="1" style="color:rgb(153,153,153)">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>
</body>
</html>