about summary refs log tree commit diff
path: root/src/rustllvm/RustWrapper.cpp
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2013-03-13 14:57:55 -0700
committerbors <bors@rust-lang.org>2013-03-13 14:57:55 -0700
commitab5472a7244896df20ceb7a12d9d30afc838f004 (patch)
tree1ca658c64f9200eb015762c4d4557f5172cf4837 /src/rustllvm/RustWrapper.cpp
parent67b0f3d5b2d88ea9b5c0a667fc3dbdf794e5c054 (diff)
parent852619d5d7ef7e9b9c5e57102e244c575f0c6a8f (diff)
downloadrust-ab5472a7244896df20ceb7a12d9d30afc838f004.tar.gz
rust-ab5472a7244896df20ceb7a12d9d30afc838f004.zip
auto merge of #5307 : nikomatsakis/rust/remove-by-val, r=nikomatsakis
This is done in two steps:

First, we make foreign functions not consider modes at all.  This is because previously ++ mode was the only way to pass structs to foreign functions and so forth.  We also add a lint mode warning if you use `&&` mode in a foreign function, since the semantics of that change (it used to pass a pointer to the C function, now it doesn't).

Then, we remove by value and make it equivalent to `+` mode.  At the same time, we stop parsing `-` mode and convert all uses of it to `+` mode (it was already being parsed to `+` mode anyhow).

This obsoletes pull request #5298.

r? @brson
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
-rw-r--r--src/rustllvm/RustWrapper.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp
index 7686dcd4ff4..12b305720cc 100644
--- a/src/rustllvm/RustWrapper.cpp
+++ b/src/rustllvm/RustWrapper.cpp
@@ -546,8 +546,8 @@ extern "C" LLVMValueRef LLVMInlineAsm(LLVMTypeRef Ty,
                                       char *Constraints,
                                       LLVMBool HasSideEffects,
                                       LLVMBool IsAlignStack,
-                                      InlineAsm::AsmDialect Dialect) {
+                                      unsigned Dialect) {
     return wrap(InlineAsm::get(unwrap<FunctionType>(Ty), AsmString,
                                Constraints, HasSideEffects,
-                               IsAlignStack, Dialect));
+                               IsAlignStack, (InlineAsm::AsmDialect) Dialect));
 }