<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <p>Can you please send one of the source file that is generating
      these warnings?</p>
    <p>Thanks<br>
      Maurizio<br>
    </p>
    <div class="moz-cite-prefix">On 15/02/2024 12:23, Duncan Gittins
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:CABOqcFtRkoQ9=spY673AQ3ywEj7M-zcz_EXBEJ_Hg9FscoPrvQ@mail.gmail.com">
      
      <div dir="ltr">
        <div>These are trivial issues I noted when re-building with
          latest jextract master (am now using LLVM13).</div>
        <div><br>
        </div>
        <div>I put all my generated code into a module definition which
          exports each package generated by jextract. The compiler warns
          that there are no explicit contructors for each interface
          class type, such as the inner or top level
          interface handlers such as IUnknownVtbl.QueryInterface and
          LPHANDLER_FUNCTION_EX:</div>
        <div><br>
        </div>
        <div>    [javac]
          C:\mymoduleproject\generated\some\package\name\IUnknownVtbl.java:48:
          warning: [missing-explicit-ctor] class
          IUnknownVtbl.QueryInterface in exported package <a href="http://some.package.name" moz-do-not-send="true">some.package.name</a>
          declares no explicit constructors, thereby exposing a default
          constructor to clients of module mymoduleproject<br>
              [javac]     public class QueryInterface {</div>
        <br>
        <div>Also, shouldn't the inner classes for interfaces -  like
          IUnknownVtbl.QueryInterface - be declared as static? I assume
          that means the code generated could be a tiny amount smaller
          as no implicit parent$this.<br>
        </div>
        <div><br>
        </div>
        <div>Headers used:  #include <objbase.h> + #include
          <shlobj_core.h><br>
        </div>
        <div><br>
        </div>
        <div>Kind regards</div>
        <div><br>
        </div>
        <div>Duncan<br>
        </div>
      </div>
    </blockquote>
  </body>
</html>