[libclang] Indexing API: Fix suppressing of references in macros and suppress
@class forward references.

rdar://10568080&10568103&10568119

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146496 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/c-index-test/c-index-test.c b/tools/c-index-test/c-index-test.c
index 1370e21..fdc88a0 100644
--- a/tools/c-index-test/c-index-test.c
+++ b/tools/c-index-test/c-index-test.c
@@ -1580,6 +1580,10 @@
     printf("<null loc>");
     return;
   }
+  if (!file) {
+    printf("<no idxfile>");
+    return;
+  }
   filename = clang_getFileName((CXFile)file);
   cname = clang_getCString(filename);
   end = cname + strlen(cname);
@@ -1694,9 +1698,9 @@
 
   printf("%s: kind: %s%s", cb, getEntityKindString(info->kind),
          getEntityTemplateKindString(info->templateKind));
-  printf(" | lang: %s", getEntityLanguageString(info->lang));
   printf(" | name: %s", name);
   printf(" | USR: %s", info->USR);
+  printf(" | lang: %s", getEntityLanguageString(info->lang));
 }
 
 static void printBaseClassInfo(CXClientData client_data,