teak-llvm/lldb/packages/Python/lldbsuite/test/commands/expression
Raphael Isemann 6237c9fe6c [lldb] Don't emit artificial constructor declarations as global functions
Summary:
When we have a artificial constructor DIE, we currently create from that a global function with the name of that class.
That ends up causing a bunch of funny errors such as "must use 'struct' tag to refer to type 'Foo' in this scope" when
doing `Foo f`. Also causes that constructing a class via `Foo()` actually just calls that global function.

The fix is that when we have an artificial method decl, we always treat it as handled even if we don't create a CXXMethodDecl
for it (which we never do for artificial methods at the moment).

Fixes rdar://55757491 and probably some other radars.

Reviewers: aprantl, vsk, shafik

Reviewed By: aprantl

Subscribers: jingham, shafik, labath, JDevlieghere, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D68130

llvm-svn: 375151
2019-10-17 18:16:50 +00:00
..
anonymous-struct [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
argument_passing_restrictions [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
calculator_mode
call-function Add arm64_32 support to lldb, an ILP32 codegen 2019-10-16 19:14:49 +00:00
call-overridden-method [lldb] Don't emit artificial constructor declarations as global functions 2019-10-17 18:16:50 +00:00
call-restarts [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
call-throws Canonicalize variable usage in testsuite Makefiles 2019-09-25 00:36:00 +00:00
cast_int_to_anonymous_enum [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
char Add arm64_32 support to lldb, an ILP32 codegen 2019-10-16 19:14:49 +00:00
class_template_specialization_empty_pack [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
completion [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
completion-crash1 [dotest] Delete trivial inline test makefiles 2019-09-05 06:55:23 +00:00
completion-crash2 [dotest] Delete trivial inline test makefiles 2019-09-05 06:55:23 +00:00
completion-crash-incomplete-record [dotest] Delete trivial inline test makefiles 2019-09-05 06:55:23 +00:00
completion-crash-lambda [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
completion-in-lambda-and-unnnamed-class
context-object [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
context-object-objc Canonicalize variable usage in testsuite Makefiles 2019-09-25 00:36:00 +00:00
diagnostics [lldb] Print better diagnostics for user expressions and modules 2019-09-18 08:53:35 +00:00
dollar-in-variable [dotest] Delete trivial inline test makefiles 2019-09-05 06:55:23 +00:00
dont_allow_jit Canonicalize variable usage in testsuite Makefiles 2019-09-25 00:36:00 +00:00
entry-bp [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
expr-in-syscall [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
fixits [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
formatters [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
function_template_specialization_temp_args [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
ignore-artificial-constructors [lldb] Don't emit artificial constructor declarations as global functions 2019-10-17 18:16:50 +00:00
import_builtin_fileid Canonicalize variable usage in testsuite Makefiles 2019-09-25 00:36:00 +00:00
import-std-module [lldb] Mark import-std-module/empty-module as libc++ test 2019-10-11 17:34:44 +00:00
inline-namespace [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
invalid-args [lldb][NFC] Remove unnecessary constructors from invalid-args tests 2019-09-03 09:25:02 +00:00
ir-interpreter [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
ir-interpreter-phi-nodes [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
issue_11588 [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
macros [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
multiline-completion Skip PExpect tests under ASAN, I can't get them to work reliably. 2019-10-15 15:38:49 +00:00
namespace_local_var_same_name_cpp_and_c [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
namespace_local_var_same_name_obj_c Canonicalize variable usage in testsuite Makefiles 2019-09-25 00:36:00 +00:00
no-deadlock [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
options [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
persist_objc_pointeetype Add arm64_32 support to lldb, an ILP32 codegen 2019-10-16 19:14:49 +00:00
persistent_ptr_update [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
persistent_types [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
persistent_variables [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
po_verbosity Canonicalize variable usage in testsuite Makefiles 2019-09-25 00:36:00 +00:00
pr35310 [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
radar_8638051 [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
radar_9531204 [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
radar_9673664 [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
rdar42038760 [dotest] Delete trivial inline test makefiles 2019-09-05 06:55:23 +00:00
rdar44436068 [dotest] Delete trivial inline test makefiles 2019-09-05 06:55:23 +00:00
save_jit_objects [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
scoped_enums Canonicalize variable usage in testsuite Makefiles 2019-09-25 00:36:00 +00:00
test [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
timeout [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
top-level [Testsuite] Get rid of most of the recursive shared library Makefiles 2019-10-08 16:23:28 +00:00
two-files Canonicalize variable usage in testsuite Makefiles 2019-09-25 00:36:00 +00:00
unicode-in-variable [dotest] Delete trivial inline test makefiles 2019-09-05 06:55:23 +00:00
unwind_expression [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
vector_of_enums [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
weak_symbols Canonicalize variable usage in testsuite Makefiles 2019-09-25 00:36:00 +00:00
xvalue [dotest] Avoid the need for LEVEL= makefile boilerplate 2019-09-04 07:46:25 +00:00
.categories