summaryrefslogtreecommitdiffstats
path: root/clang/test/Modules/Inputs/normal-module-map
Commit message (Collapse)AuthorAgeFilesLines
* Add missing header from 165821Douglas Gregor2012-10-121-0/+2
| | | | llvm-svn: 165822
* Sanitize the names of modules determined based on the names of headersDouglas Gregor2012-10-122-0/+2
| | | | | | | or directories, to make sure that they are identifiers that are not keywords in any dialect. Fixes <rdar://problem/12489495>. llvm-svn: 165821
* Implement umbrella directories for modules, which are similar toDouglas Gregor2011-12-083-0/+9
| | | | | | | | | | | | | | | umbrella headers in the sense that all of the headers within that directory (and eventually its subdirectories) are considered to be part of the module with that umbrella directory. However, unlike umbrella headers, which are expected to include all of the headers within their subdirectories, Clang will automatically include all of the headers it finds in the named subdirectory. The intent here is to allow a module map to trivially turn a subdirectory into a module, where the module's structure can mimic the directory structure. llvm-svn: 146165
* Tweak the syntax of umbrella headers, so that "umbrella" is treated asDouglas Gregor2011-12-082-3/+3
| | | | | | | | | | | a modifier for a header declarartion, e.g., umbrella header "headername" Collapse the umbrella-handling code in the parser into the header-handling code, so we don't duplicate the header-search logic. llvm-svn: 146159
* Add missing header for modules test.Douglas Gregor2011-11-161-0/+2
| | | | llvm-svn: 144862
* A module with an umbrella header assumes that all of the headers inDouglas Gregor2011-11-161-0/+3
| | | | | | | | the umbrella header's directory and its subdirectories are part of the module (that's why it's an umbrella). Make sure that these headers are considered to be part of the module for lookup purposes. llvm-svn: 144859
* Tweak the module map file test slightly, by putting one of the headersDouglas Gregor2011-11-121-1/+1
| | | | | | | | into a submodule. Submodules aren't actually supported anywhere else, but we do parse them, so this verifies that we're at least seeing through them properly. llvm-svn: 144436
* When searching for a module, speculatively load module maps to see ifDouglas Gregor2011-11-122-0/+4
| | | | | | | | the module is described in one of the module maps in a search path or in a subdirectory off the search path that has the same name as the module we're looking for. llvm-svn: 144433
* Teach the search for modules to consider modules described by a moduleDouglas Gregor2011-11-112-0/+4
| | | | | | | | | | | | | | map, so long as they have an umbrella header. This makes it possible to introduce a module map + umbrella header for a given set of headers, to turn it into a module. There are two major deficiencies here: first, we don't go hunting for module map files when we just see a module import (so we won't know about the modules described therein). Second, we don't yet have a way to build modules that don't have umbrella headers, or have incomplete umbrella headers. llvm-svn: 144424
* Introduce basic support for parsing module map files.Douglas Gregor2011-11-117-0/+18
Module map files provide a way to map between headers and modules, so that we can layer a module system on top of existing headers without changing those headers at all. This commit introduces the module map file parser and the module map that it generates, and wires up the module map file parser so that we'll automatically find module map files as part of header search. Note that we don't yet use the information stored in the module map. llvm-svn: 144402
OpenPOWER on IntegriCloud