llvm-project/clang/test/Modules
Richard Smith 7ecc31b032 When merging redeclaration chains across modules, if a declaration is visible
in one module but is only declared as a friend in another module, keep it
visible in the result of the merge.

This is incomplete on two axes:

1) Our handling of local extern declarations is basically broken (we put them
in the wrong decl context, and don't find them in redeclaration lookup, unless
they've previously been declared), and this results in them making friends
visible after a merge.

2) Eventually we'll need to mark that this has happened, and more carefully
check whether a declaration should be visible if it was only visible in some
of the modules in which it was declared. Fortunately it's rare for the
identifier namespace of a declaration to change along its redeclaration chain.

llvm-svn: 187639
2013-08-02 01:09:12 +00:00
..
Inputs When merging redeclaration chains across modules, if a declaration is visible 2013-08-02 01:09:12 +00:00
redecls [Modules] Fix an issue where the reconstructed redeclaration chain was incomplete, missing the definition from a module. 2013-04-26 21:33:35 +00:00
self-import-header clang/test/Modules/self-import-header/test.m: Add explicit -target. 2013-05-16 06:59:30 +00:00
auto-module-import.m Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
autolink.m Suffixing #pragma comment(lib) library names with .lib if necessary. This matches MSVC behavior, as well as allows us to properly link libraries such as the ones provided by the MSDN examples. 2013-05-24 15:06:56 +00:00
build-fail-notes.m Add 'not' to commands that are expected to fail. 2013-07-04 16:16:58 +00:00
builtins.m <rdar://problem/13560075> Teach name lookup for builtin names to find hidden declarations. 2013-04-03 23:06:26 +00:00
compiler_builtins.m Avoid names like __in that conflict with SAL in builtin headers 2013-04-19 17:00:14 +00:00
compiler_builtins_arm.m Add arm_neon.h to the builtin intrinsics module map. 2013-05-20 14:07:18 +00:00
config_macros.m <rdar://problem/10796651> Introduce configuration macros into module maps. 2013-03-20 00:22:05 +00:00
conflicts.m <rdar://problem/12368093> Extend module maps with a 'conflict' declaration, and warn when a newly-imported module conflicts with an already-imported module. 2013-03-20 21:10:35 +00:00
cstd.m When looking for the module associated with one of our magical builtin headers, speculatively load module maps. 2013-05-02 17:58:30 +00:00
cxx-decls.cpp If an unimported submodule of an imported module contains a declaration of a 2013-07-14 02:01:48 +00:00
cxx-inline-namespace.cpp Remove an assert which triggers when a decl context in a module hits the 'has 2013-02-12 02:32:35 +00:00
cxx-linkage-cache.cpp Fix a bug reduced from a crash when trying to use modules with libc++. We check 2013-02-12 05:48:23 +00:00
cxx-many-overloads.cpp Fix conflict between r174685 and r174645 (rename -fmodule-cache-path <foo> to -fmodules-cache-path=<foo>). 2013-02-08 01:35:44 +00:00
cxx-templates.cpp When merging redeclaration chains across modules, if a declaration is visible 2013-08-02 01:09:12 +00:00
cycles.c Add 'not' to commands that are expected to fail. 2013-07-04 16:16:58 +00:00
decldef.m Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
decldef.mm Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
diag-pragma.c [modules] Make sure enabled diagnostic pragmas inside the module don't affect the translation unit that 2013-03-27 17:17:23 +00:00
diamond-pch.c Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
diamond.c Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
direct-module-import.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
driver.c <rdar://problem/13477190> Give the Clang module cache directory some structure, so it's easier to find. 2013-03-21 21:48:48 +00:00
epic-fail.m Add 'not' to commands that are expected to fail. 2013-07-04 16:16:58 +00:00
fatal-module-loader-error.m Add 'not' to commands that are expected to fail. 2013-07-04 16:16:58 +00:00
global_index.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
header-import.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
ignored_macros.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
import-decl.cpp Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
incomplete-module.m Add -Wincomplete-module, which detects when a header is included from a module but isn't itself part of a module. 2013-05-20 13:49:41 +00:00
inferred-frameworks.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
inferred-submodules.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
irgen.c Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
linkage-merge.cpp Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
linkage-merge.m Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
load_failure.c Add 'not' to commands that are expected to fail. 2013-07-04 16:16:58 +00:00
lookup.cpp Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
lookup.m Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
macros.c Add 'not' to commands that are expected to fail. 2013-07-04 16:16:58 +00:00
method_pool.m When building a module, keep *all* declared methods in the global method pool. 2013-06-21 00:20:25 +00:00
modify-module.m <rdar://problem/13037793> Allow the names of modules to differ from the name of their subdirectory in the include path. 2013-03-21 01:08:50 +00:00
module-private.cpp Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
module_file_info.m <rdar://problem/13509689> Introduce -module-file-info option that provides information about a particular module file. 2013-03-27 16:47:18 +00:00
namespaces.cpp Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
normal-module-map.cpp Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
objc-categories.m improve of note message and minor refactoring of my last 2013-05-15 15:27:35 +00:00
objc_redef.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
on-demand-build.m Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
on-demand-macros.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
private.cpp Test files for private header patch. 2013-06-20 21:15:51 +00:00
private1.cpp Test files for private header patch. 2013-06-20 21:15:51 +00:00
prune.m Remove local path from test. 2013-03-25 21:52:42 +00:00
redecl-merge.m Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
redecl-merge2.m [Modules] Cope better with top-level declarations loaded after being declared in the current translation unit <rdar://problem/13189985>. 2013-02-11 18:16:18 +00:00
redecl-namespaces.mm Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
redeclarations.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
renamed.m <rdar://problem/13037793> Allow the names of modules to differ from the name of their subdirectory in the include path. 2013-03-21 01:08:50 +00:00
requires.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
serialized-diags.m Remove forward slashes from check; should unbreak Windows buildbots. 2013-05-06 15:42:15 +00:00
stddef.m <rdar://problem/13479214> Make Clang's <stddef.h> robust against system headers defining size_t/ptrdiff_t/wchar_t. 2013-03-22 00:10:49 +00:00
subframeworks.m Extended VerifyDiagnosticConsumer to also verify source file for diagnostic. 2013-04-17 08:06:46 +00:00
submodules-preprocess.cpp Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
submodules.cpp Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
submodules.m Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
system_headers.m [Modules] If a module map resides in a system header directory, treat it as a system module. 2013-06-21 16:28:10 +00:00
system_version.m Make sure we have the include paths we need 2013-04-12 00:23:25 +00:00
templates.mm Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00
wildcard-submodule-exports.cpp Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. 2013-02-07 19:01:24 +00:00