/*
* This file is part of cparser.
- * Copyright (C) 2007-2008 Matthias Braun <matze@braunis.de>
+ * Copyright (C) 2007-2009 Matthias Braun <matze@braunis.de>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
case ATOMIC_TYPE_USHORT: return "short";
case ATOMIC_TYPE_INT: return "int";
case ATOMIC_TYPE_UINT: return "int";
- case ATOMIC_TYPE_LONG: return "NativeLong";
- case ATOMIC_TYPE_ULONG: return "NativeLong";
+ case ATOMIC_TYPE_LONG: return "com.sun.jna.NativeLong";
+ case ATOMIC_TYPE_ULONG: return "com.sun.jna.NativeLong";
case ATOMIC_TYPE_LONGLONG: return "long";
case ATOMIC_TYPE_ULONGLONG: return "long";
case ATOMIC_TYPE_FLOAT: return "float";
fputs("String", out);
return;
}
+ if (is_type_pointer(points_to)) {
+ /* hack... */
+ fputs("Pointer[]", out);
+ return;
+ }
fputs("Pointer", out);
}
type_set_output(out);
fprintf(out, "/* WARNING: Automatically generated file */\n");
fputs("import com.sun.jna.Library;\n", out);
- fputs("import com.sun.jna.Native;\n", out);
- fputs("import com.sun.jna.Platform;\n", out);
fputs("import com.sun.jna.Pointer;\n", out);
- fputs("import com.sun.jna.NativeLong;\n", out);
fputs("\n\n", out);
/* TODO: where to get the name from? */
if (buf[0] == 0)
continue;
- symbol_t *symbol = symbol_table_insert(buf);
+ char *str = malloc(len+1);
+ memcpy(str, buf, len+1);
+ symbol_t *symbol = symbol_table_insert(str);
pset_new_insert(&avoid_symbols, symbol);
}
fclose(avoid);