aboutsummaryrefslogtreecommitdiff
path: root/libtcc.c
diff options
context:
space:
mode:
authorgrischka <grischka>2009-12-19 22:08:52 +0100
committergrischka <grischka>2009-12-19 22:16:21 +0100
commit94bf4d2c227e2073458cabc768d1167e1f3ab2f8 (patch)
treec18160b09f29b7a3dddbdb10756edb1526d98f4e /libtcc.c
parent1308e8ebcfba43b4b96b7ef32f1a177b1168665d (diff)
downloadtinycc-94bf4d2c227e2073458cabc768d1167e1f3ab2f8.tar.gz
tinycc-94bf4d2c227e2073458cabc768d1167e1f3ab2f8.tar.bz2
tccpe: improve dllimport
Diffstat (limited to 'libtcc.c')
-rw-r--r--libtcc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libtcc.c b/libtcc.c
index 823078e..5b11396 100644
--- a/libtcc.c
+++ b/libtcc.c
@@ -214,6 +214,7 @@ int tcc_output_coff(TCCState *s1, FILE *f);
/* tccpe.c */
int pe_load_file(struct TCCState *s1, const char *filename, int fd);
int pe_output_file(struct TCCState *s1, const char *filename);
+int pe_dllimport(int r, SValue *sv, void (*fn)(int r, SValue *sv));
/* tccasm.c */
#ifdef CONFIG_TCC_ASM
@@ -780,6 +781,10 @@ static void put_extern_sym2(Sym *sym, Section *section,
sym_type = STT_NOTYPE;
} else {
sym_type = STT_OBJECT;
+#ifdef TCC_TARGET_PE
+ if (sym->type.t & VT_EXPORT)
+ other |= 1;
+#endif
}
if (sym->type.t & VT_STATIC)