Skip to content

Commit 1163f69

Browse files
committed
rustc: fix linkage of internal static nodes.
1 parent 943d7ad commit 1163f69

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

Diff for: src/librustc/middle/trans/consts.rs

+4-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
use core::prelude::*;
1212

1313
use back::abi;
14-
use lib::llvm::{llvm, ValueRef, TypeRef, Bool, True, False};
14+
use lib::llvm::{llvm, SetLinkage, InternalLinkage, PrivateLinkage,
15+
ValueRef, TypeRef, Bool, True, False};
1516
use metadata::csearch;
1617
use middle::const_eval;
1718
use middle::trans::adt;
@@ -104,6 +105,7 @@ fn const_addr_of(cx: @CrateContext, cv: ValueRef) -> ValueRef {
104105
};
105106
llvm::LLVMSetInitializer(gv, cv);
106107
llvm::LLVMSetGlobalConstant(gv, True);
108+
SetLinkage(gv, PrivateLinkage);
107109
gv
108110
}
109111
}
@@ -483,6 +485,7 @@ fn const_expr_unadjusted(cx: @CrateContext, e: @ast::expr) -> ValueRef {
483485
};
484486
llvm::LLVMSetInitializer(gv, cv);
485487
llvm::LLVMSetGlobalConstant(gv, True);
488+
SetLinkage(gv, PrivateLinkage);
486489
let p = const_ptrcast(cx, gv, llunitty);
487490
C_struct(~[p, sz])
488491
}

0 commit comments

Comments
 (0)