summary refs log tree commit diff
path: root/src/test/debug-info
AgeCommit message (Collapse)AuthorLines
2014-01-08auto merge of #11401 : michaelwoerister/rust/issue11322, r=alexcrichtonbors-0/+40
`expand_include_str()` in libsyntax seems to have corrupted the CodeMap by always setting the BytePos of any included files to zero. It now uses `CodeMap::new_filemap()` which should set everything properly. This should fix issue #11322 but I don't want to close it before I have confirmation from the reporters that the problem is indeed fixed.
2014-01-08Fix CodeMap issue in expand_include_str()Michael Woerister-0/+40
2014-01-07'borrowed pointer' -> 'reference'Brian Anderson-2/+2
2014-01-02debuginfo: Add test case for recursive enum types (issue #11083)Michael Woerister-0/+33
2013-12-17debuginfo: Updated test cases to also test by-value self arguments.Michael Woerister-193/+192
2013-12-16debuginfo: Add test cases for function prologue handling.Michael Woerister-0/+493
2013-12-16debuginfo: Set the is_local_to_unit attribute of functions correctlyMichael Woerister-2/+1
2013-12-14auto merge of #10932 : alexcrichton/rust/feature-update, r=cmrbors-1/+22
2013-12-14Handle more cases in the heap lintsAlex Crichton-1/+22
2013-12-13Ignore failing Android debug-info tests. #10381Brian Anderson-0/+32
2013-12-11Make 'self lifetime illegal.Erik Price-8/+8
Also remove all instances of 'self within the codebase. This fixes #10889.
2013-11-28Register new snapshotsAlex Crichton-5/+5
2013-11-26librustc: Fix merge fallout.Patrick Walton-2/+2
2013-11-26test: Remove most uses of `&fn()` from the tests.Patrick Walton-1/+1
2013-11-18librustc: Convert `~fn()` to `proc()` everywhere.Patrick Walton-2/+2
2013-11-14test: Add xfail-win32 to two debug-info testsklutzy-0/+2
2013-11-10tagging issue number(#10381)Young-il Choi-60/+62
2013-11-06Add make check support(arm-linux-androideabi debuginfo)sh8281.kim-0/+116
2013-11-04Relax the constraints on a debuginfo testAlex Crichton-1/+1
The snapshot just failed due to a debuginfo test failing, and according to its output at http://buildbot.rust-lang.org/builders/snap3-linux/builds/564/steps/test/logs/stdio it appears to be because the printed lines has a little less information than the original lines were checking for. I would suspect that this is just because of a slightly different version of gdb, but it's not that serious regardless.
2013-11-02Updated debugging metadata for ty_nil and ty_botMichael Letterle-0/+73
ty_nil will now report as "()" in gdb ty_bot will now report as "!" in gdb Added test to confirm basic types debugging metadata. This fixes #9226
2013-10-29Unbreak the debuginfo tests.Jed Davis-8/+8
The variant used in debug-info/method-on-enum.rs had its layout changed by the smaller discriminant, so that the `u32` no longer overlaps both of the `u16`s, and thus the debugger is printing partially uninitialized data when it prints the wrong variant. Thus, the test runner is modified to accept wildcards (using a string that should be unlikely to occur literally), to allow for this.
2013-10-23register snapshotsDaniel Micay-0/+18
2013-10-15use element count in slices, not size in bytesDaniel Micay-11/+11
This allows the indexing bounds check or other comparisons against an element length to avoid a multiplication by the size.
2013-10-06Add appropriate #[feature] directives to testsAlex Crichton-0/+17
2013-10-01remove the `float` typeDaniel Micay-45/+24
It is simply defined as `f64` across every platform right now. A use case hasn't been presented for a `float` type defined as the highest precision floating point type implemented in hardware on the platform. Performance-wise, using the smallest precision correct for the use case greatly saves on cache space and allows for fitting more numbers into SSE/AVX registers. If there was a use case, this could be implemented as simply a type alias or a struct thanks to `#[cfg(...)]`. Closes #6592 The mailing list thread, for reference: https://mail.mozilla.org/pipermail/rust-dev/2013-July/004632.html
2013-09-24auto merge of #9336 : alexcrichton/rust/issue-7981, r=catamorphismbors-4/+4
Progress on #7981 This doesn't completely close the issue because `struct A;` is still allowed, and it's a much larger change to disallow that. I'm also not entirely sure that we want to disallow that. Regardless, punting that discussion to the issue instead.
2013-09-24Stop accepting 'impl ...;', require {} insteadAlex Crichton-4/+4
Progress on #7981
2013-09-23test: Fix rustdoc and tests.Patrick Walton-133/+0
2013-09-19Replace unreachable() calls with unreachable!().Chris Morgan-4/+2
This is the second of two parts of #8991, now possible as a new snapshot has been made. (The first part implemented the unreachable!() macro; it was #8992, 6b7b8f2682.) ``std::util::unreachable()`` is removed summarily; any code which used it should now use the ``unreachable!()`` macro. Closes #9312. Closes #8991.
2013-09-16switch Drop to `&mut self`Daniel Micay-9/+9
2013-09-15debuginfo: Fix style nits for pull request.Michael Woerister-2/+0
2013-09-15debuginfo: Added description of algorithm for handling recursive types.Michael Woerister-6/+6
Also fixed nasty bug caused by calling LLVMDIBuilderCreateStructType() with a null pointer where an empty array was expected (which would trigger an unintelligable assertion somewhere down the line).
2013-09-15debuginfo: Added test cases for recursive structs.Michael Woerister-0/+315
2013-09-15debuginfo: Basic support for trait objects.Michael Woerister-0/+34
2013-09-10debuginfo: Support for namespaces (functions only)Michael Woerister-78/+78
2013-09-04debuginfo: Much improved handling of captured variables and by-value arguments.Michael Woerister-5/+18
2013-09-04debuginfo: Added test cases for structs, tuples, enums, etc passed by value.Michael Woerister-40/+173
Also updated documentation comments in debuginfo and renamed DebugContext to CrateDebugContext.
2013-09-04debuginfo: Support for by-value arguments (still excluding some cases of ↵Michael Woerister-3/+79
self arguments)
2013-09-04debuginfo: Support for variables captured in closures and closure type ↵Michael Woerister-0/+175
descriptions.
2013-09-02switch __field__ hack to <unnamed_field>Daniel Micay-1/+2
avoids conflict with fields actually named `__field__`
2013-08-27librustc: Fix merge fallout.Patrick Walton-0/+4
2013-08-26Un-disabled debug info tests on Windows.Vadim Chugunov-140/+4
2013-08-17auto merge of #8554 : michaelwoerister/rust/generics, r=brsonbors-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-17Fix warnings it testsErick Tryzelaar-29/+93
2013-08-16debuginfo: Added test cases for static struct and enum methods.Michael Woerister-0/+134
2013-08-16debuginfo: 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-16debuginfo: Add test case for issue #8513.Michael Woerister-0/+20
2013-08-16debuginfo: Implemented support for Self type parameter in trait methods with ↵Michael Woerister-0/+141
default implementation.
2013-08-16debuginfo: 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-16debuginfo: Added test cases for generic structs and enums.Michael Woerister-1/+198
Also, always set no_monomorphic_collapse flags if debuginfo is generated.