1*6384fbb2SFariborz Jahanian // RUN: rm -rf %t
2*6384fbb2SFariborz Jahanian // RUN: mkdir %t
3*6384fbb2SFariborz Jahanian // RUN: c-index-test -test-load-source all -comments-xml-schema=%S/../../bindings/xml/comment-xml-schema.rng std=c++11 %s > %t/out
4*6384fbb2SFariborz Jahanian // RUN: FileCheck %s < %t/out
5*6384fbb2SFariborz Jahanian // rdar://13752382
6*6384fbb2SFariborz Jahanian 
7*6384fbb2SFariborz Jahanian namespace inner {
8*6384fbb2SFariborz Jahanian   //! This documentation should be inherited.
9*6384fbb2SFariborz Jahanian   struct Opaque;
10*6384fbb2SFariborz Jahanian }
11*6384fbb2SFariborz Jahanian // CHECK:         (CXComment_Text Text=[ This documentation should be inherited.])))]
12*6384fbb2SFariborz Jahanian 
13*6384fbb2SFariborz Jahanian namespace borrow {
14*6384fbb2SFariborz Jahanian   //! This is documentation for the typedef (which shows up).
15*6384fbb2SFariborz Jahanian   typedef inner::Opaque Typedef;
16*6384fbb2SFariborz Jahanian // CHECK:         (CXComment_Text Text=[ This is documentation for the typedef (which shows up).])))]
17*6384fbb2SFariborz Jahanian 
18*6384fbb2SFariborz Jahanian   //! This is documentation for the alias (which shows up).
19*6384fbb2SFariborz Jahanian   using Alias = inner::Opaque;
20*6384fbb2SFariborz Jahanian // CHECK:         (CXComment_Text Text=[ This is documentation for the alias (which shows up).])))]
21*6384fbb2SFariborz Jahanian 
22*6384fbb2SFariborz Jahanian   typedef inner::Opaque NoDocTypedef;
23*6384fbb2SFariborz Jahanian // CHECK:         (CXComment_Text Text=[ This documentation should be inherited.])))]
24*6384fbb2SFariborz Jahanian 
25*6384fbb2SFariborz Jahanian   using NoDocAlias = inner::Opaque;
26*6384fbb2SFariborz Jahanian // CHECK:         (CXComment_Text Text=[ This documentation should be inherited.])))]
27*6384fbb2SFariborz Jahanian }
28