about summary refs log tree commit diff
path: root/src/test/run-pass/linkage1.rs
AgeCommit message (Collapse)AuthorLines
2019-07-27tests: Move run-pass tests without naming conflicts to uiVadim Petrochenkov-32/+0
2019-07-27tests: Add missing run-pass annotationsVadim Petrochenkov-0/+1
2019-05-16Added ignore-sgx for appropriate testsDario Gonzalez-0/+1
2018-12-25Remove licensesMark Rousskov-10/+0
2017-10-17test: Update Emscripten failures/passingAlex Crichton-1/+1
All tests should now have annotation for *why* they're ignored on emscripten. A few tests no longer need such an annotation as well! Closes #41299
2017-07-08Make `patterns_in_fns_without_body` warn-by-default againVadim Petrochenkov-3/+5
Fix some tests on Linux
2016-08-10[emscripten] Ignore testsJan-Erik Rediger-0/+1
Most of these rely on spawning processes, which is not possible in Emscripten.
2015-03-27rollup merge of #23786: alexcrichton/less-quotesAlex Crichton-1/+1
Conflicts: src/test/auxiliary/static-function-pointer-aux.rs src/test/auxiliary/trait_default_method_xc_aux.rs src/test/run-pass/issue-4545.rs
2015-03-27Unquote all crate names without underscoresRicho Healey-1/+1
2015-03-26Mass rename uint/int to usize/isizeAlex Crichton-2/+2
Now that support has been removed, all lingering use cases are renamed.
2015-02-10Enable some tests for androidwonyong kim-1/+0
2014-08-23extern crate foobar as foo;wickerwaka-1/+1
Implements remaining part of RFC #47. Addresses issue #16461. Removed link_attrs from rust.md, they don't appear to be supported by the parser. Changed all the tests to use the new extern crate syntax Change pretty printer to use 'as' syntax
2014-08-15auto merge of #16435 : vadimcn/rust/windows, r=pcwaltonbors-1/+1
Using "win32" to mean "Windows" is confusing, especially now, that Rust supports win64 builds. Let's call spade a spade.
2014-08-12Replace "ignore-win32" in tests with "ignore-windows"Vadim Chugunov-1/+1
2014-08-09Fix misspelled comments for tests.Joseph Crail-1/+1
2014-06-28Rename all raw pointers as necessaryAlex Crichton-1/+1
2014-04-06Remove check-fast. Closes #4193, #8844, #6330, #7416Brian Anderson-1/+0
2014-04-04Fix inner attribute syntax from `#[foo];` to `#![foo]`Timothée Ravier-1/+1
From the 0.10 changelog: * The inner attribute syntax has changed from `#[foo];` to `#![foo]`.
2014-03-18Fix linkage1 test which fails due to --as-neededNick Cameron-0/+7
It appears that the --as-needed flag to linkers will not pull in a dynamic library unless it satisfies a non weak undefined symbol. The linkage1 test was creating a dynamic library where it was only used for a weak-symbol as part of an executable, so the dynamic library was getting discarded. This commit adds another symbol to the library which satisfies a strong undefined symbol, so the library is pulled in to resolve the weak reference.
2014-03-11rustc: Support various flavors of linkagesAlex Crichton-0/+32
It is often convenient to have forms of weak linkage or other various types of linkage. Sadly, just using these flavors of linkage are not compatible with Rust's typesystem and how it considers some pointers to be non-null. As a compromise, this commit adds support for weak linkage to external symbols, but it requires that this is only placed on extern statics of type `*T`. Codegen-wise, we get translations like: // rust code extern { #[linkage = "extern_weak"] static foo: *i32; } // generated IR @foo = extern_weak global i32 @_some_internal_symbol = internal global *i32 @foo All references to the rust value of `foo` then reference `_some_internal_symbol` instead of the symbol `_foo` itself. This allows us to guarantee that the address of `foo` will never be null while the value may sometimes be null. An example was implemented in `std::rt::thread` to determine if `__pthread_get_minstack()` is available at runtime, and a test is checked in to use it for a static value as well. Function pointers a little odd because you still need to transmute the pointer value to a function pointer, but it's thankfully better than not having this capability at all.