about summary refs log tree commit diff
path: root/src/librustc_llvm/diagnostic.rs
AgeCommit message (Collapse)AuthorLines
2018-07-30rustc_llvm: move to rustc_codegen_llvm::llvm.Irina Popa-171/+0
2018-03-25librustc_llvm: Show PGO diagnostics properly.Emilio Cobos Álvarez-0/+5
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-08-15use field init shorthand EVERYWHEREZack M. Davis-5/+5
Like #43008 (f668999), but _much more aggressive_.
2017-07-21rustllvm: split DebugLoc in UnpackOptimizationDiagnosticTim Neumann-9/+23
2016-11-28Don't assume llvm::StringRef is null terminatedRobin Kruppe-10/+12
StringRefs have a length and their contents are not usually null-terminated. The solution is to either copy the string data (in rustc_llvm::diagnostic) or take the size into account (in LLVMRustPrintPasses). I couldn't trigger a bug caused by this (apparently all the strings returned in practice are actually null-terminated) but this is more correct and more future-proof.
2016-11-24Support LLVM 4.0 in OptimizationDiagnostic FFIRobin Kruppe-16/+19
- getMsg() changed to return std::string by-value. Fix: copy the data to a rust String during unpacking. - getPassName() changed to return StringRef
2016-10-22run rustfmt on librustc_llvm folderSrinivas Reddy Thatiparthy-8/+3
2016-08-03split the FFI part of rustc_llvm to rustc_llvm::ffiAriel Ben-Yehuda-1/+2
2016-08-03begin auditing the C++ types in RustWrapperAriel Ben-Yehuda-17/+38
2016-05-29run rustfmt on librustc_llvm folderSrinivas Reddy Thatiparthy-23/+26
2015-11-19Remove unneeded `#[derive(Copy)]`Tobias Bucher-2/+0
It was introduced with the change that made copy opt-in. The implementation gives a warning, because the struct contains a raw pointer.
2015-11-17Remove 'raw_pointer_derive' lint (#14615)Devon Hollowood-1/+0
2015-04-01Fallout out rustcNiko Matsakis-5/+4
2015-01-27Rollup merge of #21602 - japaric:derive-copy, r=alexcrichtonManish Goregaokar-2/+2
2015-01-25cleanup: s/impl Copy/#[derive(Copy)]/gJorge Aparicio-2/+2
2015-01-22Better inline assembly errorsJohn Kåre Alsaker-1/+32
2015-01-19Replace `0 as *const/mut T` with `ptr::null/null_mut()`we-4/+5
2015-01-03sed -i -s 's/#\[deriving(/#\[derive(/g' **/*.rsJorge Aparicio-2/+2
2014-12-19librustc_llvm: use `#[deriving(Copy)]`Jorge Aparicio-4/+2
2014-12-08librustc: Make `Copy` opt-in.Niko Matsakis-0/+6
This change makes the compiler no longer infer whether types (structures and enumerations) implement the `Copy` trait (and thus are implicitly copyable). Rather, you must implement `Copy` yourself via `impl Copy for MyType {}`. A new warning has been added, `missing_copy_implementations`, to warn you if a non-generic public type has been added that could have implemented `Copy` but didn't. For convenience, you may *temporarily* opt out of this behavior by using `#![feature(opt_out_copy)]`. Note though that this feature gate will never be accepted and will be removed by the time that 1.0 is released, so you should transition your code away from using it. This breaks code like: #[deriving(Show)] struct Point2D { x: int, y: int, } fn main() { let mypoint = Point2D { x: 1, y: 1, }; let otherpoint = mypoint; println!("{}{}", mypoint, otherpoint); } Change this code to: #[deriving(Show)] struct Point2D { x: int, y: int, } impl Copy for Point2D {} fn main() { let mypoint = Point2D { x: 1, y: 1, }; let otherpoint = mypoint; println!("{}{}", mypoint, otherpoint); } This is the backwards-incompatible part of #13231. Part of RFC #3. [breaking-change]
2014-11-17Switch to purely namespaced enumsSteven Fackler-0/+3
This breaks code that referred to variant names in the same namespace as their enum. Reexport the variants in the old location or alter code to refer to the new locations: ``` pub enum Foo { A, B } fn main() { let a = A; } ``` => ``` pub use self::Foo::{A, B}; pub enum Foo { A, B } fn main() { let a = A; } ``` or ``` pub enum Foo { A, B } fn main() { let a = Foo::A; } ``` [breaking-change]
2014-09-12Add -C remark for LLVM optimization remarksKeegan McAllister-0/+92
Fixes #17116.