rust/src/test/debuginfo
Wesley Wiser 533002d3a1 Fix closed over variables not available in debuginfo for Windows MSVC
The issue was that the resulting debuginfo was too complex for LLVM to
translate into CodeView records correctly. As a result, it simply
ignored the debuginfo which meant Windows debuggers could not display
any closed over variables when stepping inside a closure.

This fixes that by spilling additional variables to the stack so that
the resulting debuginfo is simple (just `*my_variable.dbg.spill`) and
LLVM can generate the correct CV records.
2021-04-08 14:08:56 -04:00
..
auxiliary Moved issue tests to subdirs and normalised names. 2019-03-14 01:00:49 +00:00
associated-types.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
basic-types-globals-metadata.rs Remove licenses 2018-12-25 21:08:33 -07:00
basic-types-globals.rs Remove licenses 2018-12-25 21:08:33 -07:00
basic-types-metadata.rs Remove licenses 2018-12-25 21:08:33 -07:00
basic-types-mut-globals.rs Remove licenses 2018-12-25 21:08:33 -07:00
basic-types.rs Remove licenses 2018-12-25 21:08:33 -07:00
borrowed-basic.rs Remove licenses 2018-12-25 21:08:33 -07:00
borrowed-c-style-enum.rs Remove licenses 2018-12-25 21:08:33 -07:00
borrowed-enum.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
borrowed-struct.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
borrowed-tuple.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
borrowed-unique-basic.rs Remove licenses 2018-12-25 21:08:33 -07:00
box.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
boxed-struct.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
by-value-non-immediate-argument.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
by-value-self-argument-in-trait-impl.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
c-style-enum-in-composite.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
c-style-enum.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
closure-in-generic-function.rs Remove licenses 2018-12-25 21:08:33 -07:00
constant-debug-locs.rs Remove licenses 2018-12-25 21:08:33 -07:00
constant-in-match-pattern.rs Remove licenses 2018-12-25 21:08:33 -07:00
cross-crate-spans.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
cross-crate-type-uniquing.rs Remove licenses 2018-12-25 21:08:33 -07:00
destructured-fn-argument.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
destructured-for-loop-variable.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
destructured-local.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
drop-locations.rs Remove licenses 2018-12-25 21:08:33 -07:00
empty-string.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
enum-thinlto.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
evec-in-struct.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
extern-c-fn.rs Remove licenses 2018-12-25 21:08:33 -07:00
function-arg-initialization.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
function-arguments.rs Remove licenses 2018-12-25 21:08:33 -07:00
function-call.rs Add missing : after min-gdb-version 2020-07-19 09:29:11 +00:00
function-prologue-stepping-regular.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
gdb-pretty-struct-and-enums.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
generator-locals.rs Add a resume type parameter to Generator 2020-02-02 13:20:57 +01:00
generator-objects.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
generic-enum-with-different-disr-sizes.rs Update the minimum external LLVM to 8 2020-04-14 12:44:41 -07:00
generic-function.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
generic-functions-nested.rs Remove licenses 2018-12-25 21:08:33 -07:00
generic-method-on-generic-struct.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
generic-static-method-on-struct-and-enum.rs Remove licenses 2018-12-25 21:08:33 -07:00
generic-struct-style-enum.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
generic-struct.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
generic-tuple-style-enum.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
include_string.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-7712.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-12886.rs rustc_codegen_ssa: only "spill" SSA-like values to the stack for debuginfo. 2020-02-09 16:39:23 +02:00
issue-13213.rs Add basic CDB support to debuginfo compiletest s, to help catch *.natvis regressions, like those fixed in #60687. 2019-05-19 17:10:48 -07:00
issue-14411.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-22656.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
issue-57822.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
lexical-scope-in-for-loop.rs Remove licenses 2018-12-25 21:08:33 -07:00
lexical-scope-in-if.rs Remove licenses 2018-12-25 21:08:33 -07:00
lexical-scope-in-match.rs Remove licenses 2018-12-25 21:08:33 -07:00
lexical-scope-in-parameterless-closure.rs Remove licenses 2018-12-25 21:08:33 -07:00
lexical-scope-in-stack-closure.rs Remove licenses 2018-12-25 21:08:33 -07:00
lexical-scope-in-unconditional-loop.rs Remove licenses 2018-12-25 21:08:33 -07:00
lexical-scope-in-unique-closure.rs Remove licenses 2018-12-25 21:08:33 -07:00
lexical-scope-in-while.rs Remove licenses 2018-12-25 21:08:33 -07:00
lexical-scope-with-macro.rs Remove licenses 2018-12-25 21:08:33 -07:00
lexical-scopes-in-block-expression.rs Remove licenses 2018-12-25 21:08:33 -07:00
limited-debuginfo.rs Remove licenses 2018-12-25 21:08:33 -07:00
macro-stepping.inc Remove licenses 2018-12-25 21:08:33 -07:00
macro-stepping.rs Remove licenses 2018-12-25 21:08:33 -07:00
method-on-enum.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
method-on-generic-struct.rs Remove licenses 2018-12-25 21:08:33 -07:00
method-on-struct.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
method-on-trait.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
method-on-tuple-struct.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
multi-byte-chars.rs Remove licenses 2018-12-25 21:08:33 -07:00
multi-cgu.rs Remove licenses 2018-12-25 21:08:33 -07:00
multiple-functions-equal-var-names.rs Remove licenses 2018-12-25 21:08:33 -07:00
multiple-functions.rs Remove licenses 2018-12-25 21:08:33 -07:00
name-shadowing-and-scope-nesting.rs Remove licenses 2018-12-25 21:08:33 -07:00
option-like-enum.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
packed-struct-with-destructor.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
packed-struct.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
pretty-huge-vec.rs Add missing : after min-gdb-version 2020-07-19 09:29:11 +00:00
pretty-std-collections-hash.rs Improvements to NatVis support 2020-12-28 12:14:49 -08:00
pretty-std-collections.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
pretty-std.rs Improvements to NatVis support 2020-12-28 12:14:49 -08:00
pretty-uninitialized-vec.rs Add missing : after min-gdb-version 2020-07-19 09:29:11 +00:00
rc_arc.rs tests: Ignore src/test/debuginfo/rc_arc.rs on Windows 2020-08-02 22:20:48 +03:00
recursive-enum.rs Remove licenses 2018-12-25 21:08:33 -07:00
recursive-struct.rs Update the minimum external LLVM to 8 2020-04-14 12:44:41 -07:00
self-in-default-method.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
self-in-generic-default-method.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
shadowed-argument.rs Remove licenses 2018-12-25 21:08:33 -07:00
shadowed-variable.rs Remove licenses 2018-12-25 21:08:33 -07:00
should-fail.rs Add basic CDB support to debuginfo compiletest s, to help catch *.natvis regressions, like those fixed in #60687. 2019-05-19 17:10:48 -07:00
simd.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
simple-lexical-scope.rs Remove licenses 2018-12-25 21:08:33 -07:00
simple-struct.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
simple-tuple.rs Modify type names on MSVC to make tuples .natvis compatible. 2020-06-24 19:28:12 -07:00
static-method-on-struct-and-enum.rs Remove licenses 2018-12-25 21:08:33 -07:00
struct-in-enum.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
struct-in-struct.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
struct-namespace.rs Remove licenses 2018-12-25 21:08:33 -07:00
struct-style-enum.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
struct-with-destructor.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
text-to-include-1.txt Re-bork whitespace for text file (fixup #23385) 2015-03-17 16:00:39 +05:30
text-to-include-2.txt Re-bork whitespace for text file (fixup #23385) 2015-03-17 16:00:39 +05:30
text-to-include-3.txt Re-bork whitespace for text file (fixup #23385) 2015-03-17 16:00:39 +05:30
trait-pointers.rs Remove licenses 2018-12-25 21:08:33 -07:00
tuple-in-struct.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
tuple-in-tuple.rs Modify type names on MSVC to make tuples .natvis compatible. 2020-06-24 19:28:12 -07:00
tuple-struct.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
tuple-style-enum.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
type-names.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
union-smoke.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
unique-enum.rs Update the minimum external LLVM to 8 2020-04-14 12:44:41 -07:00
unreachable-locals.rs Remove double trailing newlines 2019-04-22 16:57:01 +01:00
unsized.rs Remove licenses 2018-12-25 21:08:33 -07:00
var-captured-in-nested-closure.rs Fix closed over variables not available in debuginfo for Windows MSVC 2021-04-08 14:08:56 -04:00
var-captured-in-sendable-closure.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00
var-captured-in-stack-closure.rs Fix closed over variables not available in debuginfo for Windows MSVC 2021-04-08 14:08:56 -04:00
vec-slices.rs Remove redundant ignore-tidy-linelength annotations 2021-04-03 22:30:20 +02:00
vec.rs Implement new gdb/lldb pretty-printers 2020-06-09 16:13:11 +03:00