File: include-header-missing-in-framework-with-headermap.c

package info (click to toggle)
llvm-toolchain-9 1%3A9.0.1-16.1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 882,388 kB
  • sloc: cpp: 4,167,636; ansic: 714,256; asm: 457,610; python: 155,927; objc: 65,094; sh: 42,856; lisp: 26,908; perl: 7,786; pascal: 7,722; makefile: 6,881; ml: 5,581; awk: 3,648; cs: 2,027; xml: 888; javascript: 381; ruby: 156
file content (20 lines) | stat: -rw-r--r-- 934 bytes parent folder | download | duplicates (23)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// RUN: rm -f %t.hmap
// RUN: %hmaptool write %S/Inputs/include-header-missing-in-framework/TestFramework.hmap.json %t.hmap
// RUN: %clang_cc1 -fsyntax-only -F %S/Inputs -I %t.hmap -verify %s -DLATE_REMAPPING
// RUN: %clang_cc1 -fsyntax-only -I %t.hmap -F %S/Inputs -verify %s

// The test is similar to 'include-header-missing-in-framework.c' but covers
// the case when a header is remapped to a framework-like path with a .hmap
// file. And we can find the framework but not the header.

#ifdef LATE_REMAPPING
// Framework is found before remapping.
#include <TestFramework/BeforeRemapping.h>
// expected-error@-1 {{'TestFramework/BeforeRemapping.h' file not found}}
// expected-note@-2 {{did not find header 'BeforeRemapping.h' in framework 'TestFramework' (loaded from}}

#else
// Framework is found after remapping.
#include "RemappedHeader.h"
// expected-error@-1 {{'RemappedHeader.h' file not found}}
#endif // LATE_REMAPPING