brintos

brintos / llvm-project-archived public Read only

0
0
Text · 917 B · b9ce1c8 Raw
36 lines · c
1namespace std {2struct string {3  string(const char *);4  ~string();5};6} // namespace std7 8namespace absl {9std::string StringsFunction(std::string s1) { return s1; }10class SomeContainer {};11namespace strings_internal {12void InternalFunction() {}13template <class P> void InternalTemplateFunction(P a) { int; }14} // namespace strings_internal15 16namespace container_internal {17struct InternalStruct {};18 19template <typename T> struct InternalTemplate {};20} // namespace container_internal21} // namespace absl22 23// should not trigger warnings because inside Abseil files24void DirectAcessInternal() {25  absl::strings_internal::InternalFunction();26  absl::strings_internal::InternalTemplateFunction<std::string>("a");27}28 29class FriendUsageInternal {30  friend struct absl::container_internal::InternalStruct;31};32 33namespace absl {34void OpeningNamespaceInternally() { strings_internal::InternalFunction(); }35} // namespace absl36