zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 029d37d6a7dc96f71dded5d5a9c8e7477aaa4146 (tree)
parent 20c2dbdbd3847cfaa580878fca2566347a2f4733
Author: Andrew Kelley <superjoe30@gmail.com>
Date:   Fri, 10 Nov 2017 14:58:50 -0500

fix bug when multiple function definitions exist

This might be related to #529

Diffstat:
Msrc/codegen.cpp | 1+
1 file changed, 1 insertion(+), 0 deletions(-)

diff --git a/src/codegen.cpp b/src/codegen.cpp @@ -408,6 +408,7 @@ static LLVMValueRef fn_llvm_value(CodeGen *g, FnTableEntry *fn_table_entry) { LLVMValueRef existing_llvm_fn = LLVMGetNamedFunction(g->module, buf_ptr(symbol_name)); if (existing_llvm_fn) { fn_table_entry->llvm_value = LLVMConstBitCast(existing_llvm_fn, LLVMPointerType(fn_llvm_type, 0)); + return fn_table_entry->llvm_value; } else { fn_table_entry->llvm_value = LLVMAddFunction(g->module, buf_ptr(symbol_name), fn_llvm_type); }