Change the semantics for Entity.
Entity can now refer to declarations that are not visible outside the translation unit.
It is a wrapper of a pointer union, it's either a Decl* for declarations that don't
"cross" translation units, or an EntityImpl* which is associated with the specific "visible" Decl.
Included is a test case for handling fields across translation units.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76515 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Index/foo.h b/test/Index/foo.h
index 2e3b403..7670c00 100644
--- a/test/Index/foo.h
+++ b/test/Index/foo.h
@@ -2,3 +2,7 @@
void foo_func(int param1);
void bar_func(void);
+
+struct MyStruct {
+ int field_var;
+};