< prev index next >
src/jdk.jextract/share/classes/com/sun/tools/jextract/Utils.java
Print this page
*** 241,251 ****
private static Function parseFunctionInternal(Type t) {
final int argSize = t.numberOfArgs();
Layout[] args = new Layout[argSize];
for (int i = 0; i < argSize; i++) {
! args[i] = getLayout(t.argType(i));
}
if (t.resultType().kind() == TypeKind.Void) {
return Function.ofVoid(t.isVariadic(), args);
} else {
return Function.of(getLayout(t.resultType()), t.isVariadic(), args);
--- 241,252 ----
private static Function parseFunctionInternal(Type t) {
final int argSize = t.numberOfArgs();
Layout[] args = new Layout[argSize];
for (int i = 0; i < argSize; i++) {
! Layout l = getLayout(t.argType(i));
! args[i] = l instanceof Sequence? Address.ofLayout(64, ((Sequence)l).element()) : l;
}
if (t.resultType().kind() == TypeKind.Void) {
return Function.ofVoid(t.isVariadic(), args);
} else {
return Function.of(getLayout(t.resultType()), t.isVariadic(), args);
< prev index next >