diff --git a/src/compiler/llvm_codegen.c b/src/compiler/llvm_codegen.c index 7e12b95d0..40dd88e88 100644 --- a/src/compiler/llvm_codegen.c +++ b/src/compiler/llvm_codegen.c @@ -1061,7 +1061,7 @@ LLVMValueRef llvm_get_ref(GenContext *c, Decl *decl) } backend_ref = decl->backend_ref = LLVMAddFunction(c->module, decl_get_extname(decl), llvm_get_type(c, decl->type)); llvm_append_function_attributes(c, decl); - if (decl->is_export && platform_target.os == OS_TYPE_WIN32) + if (decl->is_export && platform_target.os == OS_TYPE_WIN32 && decl->name != kw_main && decl->name != kw_mainstub) { LLVMSetDLLStorageClass(backend_ref, LLVMDLLExportStorageClass); } diff --git a/test/test_suite/expressions/casts/cast_expr.c3t b/test/test_suite/expressions/casts/cast_expr.c3t index 913acc30c..c888e320c 100644 --- a/test/test_suite/expressions/casts/cast_expr.c3t +++ b/test/test_suite/expressions/casts/cast_expr.c3t @@ -1,3 +1,4 @@ +// #target: macos-x64 module cast_expr; fn int main(int argc, char** argv)