about summary refs log tree commit diff
path: root/compiler/rustc_metadata/messages.ftl
AgeCommit message (Collapse)AuthorLines
2025-09-21Add panic=immediate-abortBen Kimock-0/+7
2025-08-27Port the `#[link]` attribute to the new parserJonathan Brouwer-95/+0
2025-07-24generate elf symbol version in raw-dylibusamoi-0/+3
2025-06-08raw dylib: ensure that we have applied standard ABI checksRalf Jung-6/+3
also unify error messages that do not seem to have a good reason to be different
2025-05-20Warning when dependency crate has async drop types, and the feature is ↵Andrew Zhogin-1/+1
disabled - typo fixed
2025-05-19Warning added when dependency crate has async drop types, and the feature is ↵Andrew Zhogin-0/+4
disabled
2025-03-31Add an error when full metadata was not foundJakub Beránek-0/+4
2025-03-17Target modifiers fix for bool flags without valueAndrew Zhogin-3/+14
2025-02-26Support raw-dylib link kind on ELFNoratrieb-0/+3
raw-dylib is a link kind that allows rustc to link against a library without having any library files present. This currently only exists on Windows. rustc will take all the symbols from raw-dylib link blocks and put them in an import library, where they can then be resolved by the linker. While import libraries don't exist on ELF, it would still be convenient to have this same functionality. Not having the libraries present at build-time can be convenient for several reasons, especially cross-compilation. With raw-dylib, code linking against a library can be cross-compiled without needing to have these libraries available on the build machine. If the libc crate makes use of this, it would allow cross-compilation without having any libc available on the build machine. This is not yet possible with this implementation, at least against libc's like glibc that use symbol versioning. The raw-dylib kind could be extended with support for symbol versioning in the future. This implementation is very experimental and I have not tested it very well. I have tested it for a toy example and the lz4-sys crate, where it was able to successfully link a binary despite not having a corresponding library at build-time.
2025-02-21Inject `compiler_builtins` during postprocessing rather than via ASTTrevor Gross-0/+3
`compiler_builtins` is currently injected as `extern crate compiler_builtins as _`. This has made gating via diagnostics difficult because it appears in the crate graph as a non-private dependency, and there isn't an easy way to differentiate between the injected AST and user-specified `extern crate compiler_builtins`. Resolve this by injecting `compiler_builtins` during postprocessing rather than early in the AST. Most of the time this isn't even needed because it shows up in `std` or `core`'s crate graph, but injection is still needed to ensure `#![no_core]` works correctly. A similar change was attempted at [1] but this encountered errors building `proc_macro` and `rustc-std-workspace-std`. Similar failures showed up while working on this patch, which were traced back to `compiler_builtins` showing up in the graph twice (once via dependency and once via injection). This is resolved by not injecting if a `#![compiler_builtins]` crate already exists. [1]: https://github.com/rust-lang/rust/pull/113634
2025-02-02Target modifiers (special marked options) are recorded in metainfo and ↵Andrew Zhogin-0/+10
compared to be equal in different crates
2025-01-23Make the wasm_c_abi future compat warning a hard errorbjorn3-0/+3
This is the next step in getting rid of the broken C abi for wasm32-unknown-unknown.
2024-11-24Allow injecting a profiler runtime into `#![no_core]` cratesZalathar-3/+0
Now that the profiler runtime is itself `#![no_core]`, it can be a dependency of other no_core crates, including core.
2024-08-12Rollup merge of #128886 - GrigorenkoPV:untranslatable-diagnostic, r=nnethercoteGuillaume Gomez-0/+6
Get rid of some `#[allow(rustc::untranslatable_diagnostic)]` `@rustbot` label +A-translation cc https://github.com/rust-lang/rust/issues/100717
2024-08-11Ask the user to use `feature(rustc_private)` when linking to `rustc_driver`John Kåre Alsaker-0/+3
2024-08-10rustc_metadata: make "link {arg,cfg} is unstable" translatablePavel Grigorenko-0/+6
2024-06-21Fix remaining casesMichael Goulet-2/+2
2024-05-22Rename `FrameworkOnlyWindows` to `RawDylibOnlyWindows`Tobias Bucher-3/+3
Frameworks are Apple-specific, no idea why it had "framework" in the name before.
2024-05-21Convert uses of BuiltinLintDiag::Normal to custom variantsXiretza-2/+0
This ensures all diagnostic messages are created at diagnostic emission time, making them translatable.
2024-03-20Auto merge of #122359 - Zoxc:missing-static-notes, r=wesleywiserbors-0/+3
Print the crates not available as static This prints out the crates not available to be statically linked when static linking is preferred and we run into an error with duplicated crates.
2024-03-16Print the crates not available as staticJohn Kåre Alsaker-0/+3
2024-03-16Add `wasm_c_abi` `future-incompat` lintdaxpedda-0/+2
2024-02-21Unify dylib loading between proc macros and codegen backendsbjorn3-1/+1
As bonus this makes the errors when failing to load a proc macro more informative to match the backend loading errors. In addition it makes it slightly easier to patch rustc to work on platforms that don't support dynamic linking like wasm.
2023-11-30Enable link-arg link kind inside of #[link] attributezetanumbers-1/+1
- Implement link-arg as an attribute - Apply suggestions from review - Co-authored-by: Vadim Petrochenkov <vadim.petrochenkov@gmail.com> - Add unstable book entry
2023-11-22Call FileEncoder::finish in rmeta encodingBen Kimock-4/+1
2023-11-04Remove support for compiler plugins.Nicholas Nethercote-3/+0
They've been deprecated for four years. This commit includes the following changes. - It eliminates the `rustc_plugin_impl` crate. - It changes the language used for lints in `compiler/rustc_driver_impl/src/lib.rs` and `compiler/rustc_lint/src/context.rs`. External lints are now called "loaded" lints, rather than "plugins" to avoid confusion with the old plugins. This only has a tiny effect on the output of `-W help`. - E0457 and E0498 are no longer used. - E0463 is narrowed, now only relating to unfound crates, not plugins. - The `plugin` feature was moved from "active" to "removed". - It removes the entire plugins chapter from the unstable book. - It removes quite a few tests, mostly all of those in `tests/ui-fulldeps/plugin/`. Closes #29597.
2023-09-12cleanup on messagesyukang-3/+0
2023-07-04Suggest `x build library` for a custom toolchain that fails to load `core`Mu001999-0/+3
2023-07-03Revert "Suggest `x build library` for a custom toolchain that fails to load ↵Nilstrieb-3/+0
`core`" This reverts commit b913f5593d2e2698d18034b56dd538ee745f1adc. CI builds with profile=nightly, causing different test output. Making the output depend on the release channel was not a great idea.
2023-07-02Suggest `x build library` for a custom toolchain that fails to load `core`Mu001999-0/+3
2023-06-06fixJing Peng-3/+0
- remove useless commands from test Makefile - do not unnecessarily remove metadata temporary files because they'll be managed by MaybeTempDir - remove unused FailedRemove error introduced by this PR
2023-06-06Write to stdout if `-` is given as output fileJing Peng-0/+9
If `-o -` or `--emit KIND=-` is provided, output will be written to stdout instead. Binary output (`obj`, `llvm-bc`, `link` and `metadata`) being written this way will result in an error unless stdout is not a tty. Multiple output types going to stdout will trigger an error too, as they will all be mixded together.
2023-05-25Ensure Fluent messages are in alphabetical orderclubby789-191/+191
2023-04-25Revert "Remove #[alloc_error_handler] from the compiler and library"Matthias Krüger-0/+10
This reverts commit abc0660118cc95f47445fd33502a11dd448f5968.
2023-04-16Remove #[alloc_error_handler] from the compiler and libraryAmanieu d'Antras-10/+0
2023-03-11Simplify message pathsest31-0/+288
This makes it easier to open the messages file while developing on features. The commit was the result of automatted changes: for p in compiler/rustc_*; do mv $p/locales/en-US.ftl $p/messages.ftl; rmdir $p/locales; done for p in compiler/rustc_*; do sed -i "s#\.\./locales/en-US.ftl#../messages.ftl#" $p/src/lib.rs; done