| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2013-08-17 | auto merge of #8554 : michaelwoerister/rust/generics, r=brson | bors | -11/+1880 | |
| This pull request includes support for generic functions and self arguments in methods, and combinations thereof. This also encompasses any kind of trait methods, regular and static, with and without default implementation. The implementation is backed up by a felt ton of test cases `:)` This is a very important step towards being able to compile larger programs with debug info, since practically any generic function caused an ICE before. One point worth discussing is that activating debug info now automatically (and silently) sets the `no_monomorphic_collapse` flag. Otherwise debug info would show wrong type names in all but one instance of the monomorphized function. Another thing to note is that the handling of generic types does not strictly follow the DWARF specification. That is, variables with type `T` (where `T=int`) are described as having type `int` and not as having type `T`. In other words, we are losing information whether a variable has been declared with a type parameter as its type. In practice this should not make much of difference though since the concrete type is mostly what one is interested in. I'll post an issue later so this won't be forgotten. Also included are a number of bug fixes: * Closes #1758 * Closes #8513 * Closes #8443 * Fixes handling of field names in tuple structs * Fixes and re-enables test case for option-like enums that relied on undefined behavior before * Closes #1339 (should have been closed a while ago) Cheers, Michael | ||||
| 2013-08-17 | Fix warnings it tests | Erick Tryzelaar | -29/+93 | |
| 2013-08-16 | debuginfo: Added test cases for static struct and enum methods. | Michael Woerister | -0/+134 | |
| 2013-08-16 | debuginfo: Test cases for [generic][default][static] methods and functions: | Michael Woerister | -1/+635 | |
| * closure-in-generic-function * generic-functions-nested * generic-method-on-generic-struct * generic-trait-generic-static-default-method * method-on-generic-struct * self-in-generic-default-method * trait-generic-static-default-method Also, fixed an 'unused variable' warning in debuginfo.rs | ||||
| 2013-08-16 | debuginfo: Add test case for issue #8513. | Michael Woerister | -0/+20 | |
| 2013-08-16 | debuginfo: Implemented support for Self type parameter in trait methods with ↵ | Michael Woerister | -0/+141 | |
| default implementation. | ||||
| 2013-08-16 | debuginfo: Added test cases for methods on structs, enums, traits, and ↵ | Michael Woerister | -0/+663 | |
| tuple-structs. Also new test cases for tuple structs and by-value parameter passing. | ||||
| 2013-08-16 | debuginfo: Added test cases for generic structs and enums. | Michael Woerister | -1/+198 | |
| Also, always set no_monomorphic_collapse flags if debuginfo is generated. | ||||
| 2013-08-16 | debuginfo: Properly handle monomorphization of generic functions. | Michael Woerister | -1/+16 | |
| 2013-08-16 | debuginfo: Generate template type parameters for generic functions. | Michael Woerister | -0/+48 | |
| Conflicts: src/librustc/lib/llvm.rs src/librustc/middle/trans/debuginfo.rs src/rustllvm/RustWrapper.cpp src/rustllvm/rustllvm.def.in | ||||
| 2013-08-16 | debuginfo: Fixed option-like-enum test case so it does not rely on undefined ↵ | Michael Woerister | -11/+28 | |
| behavior. | ||||
| 2013-08-13 | debuginfo: Add some tests for visibiliy scopes within closures. | Michael Woerister | -0/+237 | |
| 2013-08-13 | debuginfo: Add support for argument shadowing. | Michael Woerister | -0/+59 | |
| 2013-08-13 | debuginfo: Implemented proper handling of lexical scopes and variable shadowing. | Michael Woerister | -10/+1277 | |
| 2013-08-07 | xfail debug-info/option-like-enum | Brian Anderson | -0/+1 | |
| Don't understand why this broke. | ||||
| 2013-07-25 | debuginfo: Fixed a few things for PR. | Michael Woerister | -13/+19 | |
| 2013-07-25 | debuginfo: Support for destructured function arguments. | Michael Woerister | -0/+424 | |
| 2013-07-25 | debuginfo: Support for function arguments. (WIP) | Michael Woerister | -3/+1 | |
| 2013-07-25 | debuginfo: Implemented support for destructured locals. | Michael Woerister | -5/+182 | |
| Conflicts: src/librustc/middle/trans/debuginfo.rs src/test/debug-info/destructured-local.rs | ||||
| 2013-07-20 | debuginfo: Removed some test relying on data structure sizes hard to predict ↵ | Michael Woerister | -19/+23 | |
| for all possible platforms and configurations. | ||||
| 2013-07-19 | debuginfo: Adapted DI generation to new memory layout of unique vecs. | Michael Woerister | -2/+39 | |
| 2013-07-19 | debuginfo: Cleaned up style issues for pull request. | Michael Woerister | -96/+124 | |
| 2013-07-19 | debuginfo: Added support for Option<T>-like enums. | Michael Woerister | -0/+69 | |
| 2013-07-19 | debuginfo: Fixed unique pointers to data containing managed pointers. | Michael Woerister | -0/+45 | |
| 2013-07-19 | debuginfo: DI generation for enums uses adt::represent_type() now. | Michael Woerister | -6/+6 | |
| 2013-07-19 | debuginfo: Extended test suite with various tests for enums. | Michael Woerister | -0/+343 | |
| 2013-07-19 | debuginfo: Fixes related to changed memory layout of unique allocations | Michael Woerister | -4/+4 | |
| 2013-07-19 | debuginfo: Added support for struct-style enums. | Michael Woerister | -8/+107 | |
| 2013-07-19 | debuginfo: Better support for univariant tuple-style enums. | Michael Woerister | -3/+13 | |
| 2013-07-19 | debuginfo: Support for tuple-style enums (WIP) | Michael Woerister | -2/+81 | |
| 2013-07-19 | debuginfo: Added support for c-style enums. | Michael Woerister | -4/+220 | |
| 2013-07-19 | debuginfo: Added test cases for packed structs (/w drop) | Michael Woerister | -0/+356 | |
| 2013-07-19 | debuginfo: Refactoring of composite type info generation done. | Michael Woerister | -0/+34 | |
| There is no more StructContext now. Better support for boxed vectors in there too. | ||||
| 2013-07-19 | debuginfo: Refactored vec slice code to use the new infrastructure. Added ↵ | Michael Woerister | -14/+74 | |
| test cases for vec slices. | ||||
| 2013-07-19 | debuginfo: Removed some misleading comments from test cases. | Michael Woerister | -17/+1 | |
| 2013-07-19 | debuginfo: Renamed *reference-to-* test cases to *borrowed-* | Michael Woerister | -0/+0 | |
| 2013-07-19 | debuginfo: Began refactoring of composite type handling. | Michael Woerister | -9/+65 | |
| 2013-06-27 | debuginfo: Some corrections after review. | Michael Woerister | -4/+16 | |
| 2013-06-27 | debuginfo: Formatting cleanup. | Michael Woerister | -22/+12 | |
| 2013-06-27 | debuginfo: Added test case for function arguments. | Michael Woerister | -0/+51 | |
| 2013-06-27 | debuginfo: Added test case for local variables declared with destructuring. | Michael Woerister | -0/+33 | |
| 2013-06-27 | debuginfo: Added more tests for region pointers (tuples, structs). | Michael Woerister | -0/+125 | |
| 2013-06-27 | debuginfo: Fixed some instances of gdb wrongly printing u8/i8 values as chars. | Michael Woerister | -6/+6 | |
| 2013-06-27 | debuginfo: Added test cases for region pointers into heap boxes for basic types. | Michael Woerister | -0/+230 | |
| 2013-06-27 | debuginfo: Added test case for region pointers pointing to stack values with ↵ | Michael Woerister | -0/+116 | |
| basic type. | ||||
| 2013-06-27 | debuginfo: Added test case for structs with destructor. | Michael Woerister | -0/+77 | |
| 2013-06-27 | debuginfo: Added test case for local variable scopes. | Michael Woerister | -0/+49 | |
| 2013-06-27 | debuginfo: Made test cases use correct naming convention for variables. | Michael Woerister | -64/+64 | |
| 2013-06-27 | debuginfo: Added test cases for tuples contained in structs. | Michael Woerister | -0/+151 | |
| 2013-06-27 | debuginfo: Added test cases for tuples. | Michael Woerister | -26/+101 | |
