summaryrefslogtreecommitdiffstats
path: root/clang/test/Modules/malformed.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [Modules] More descriptive diagnostics for misplaced import directiveSerge Pavlov2015-09-191-8/+2
| | | | | | | | | | If an import directive was put into wrong context, the error message was obscure, complaining on misbalanced braces. To get more descriptive messages, annotation tokens related to modules are processed where they must not be seen. Differential Revision: http://reviews.llvm.org/D11844 llvm-svn: 248085
* [modules] Simplify -cc1 interface for enabling implicit module maps.Richard Smith2015-06-161-3/+3
| | | | | | | | | | | | | We used to have a flag to enable module maps, and two more flags to enable implicit module maps. This is all redundant; we don't need any flag for enabling module maps in the abstract, and we don't usually have -fno- flags for -cc1. We now have just a single flag, -fimplicit-module-maps, that enables implicitly searching the file system for module map files and loading them. The driver interface is unchanged for now. We should probably rename -fmodule-maps to -fimplicit-module-maps at some point. llvm-svn: 239789
* Revert r237609 for now.Richard Smith2015-05-191-3/+3
| | | | | | | | | | | | glibc's headers use __need_* macros to selectively export parts of themselves to each other. This requires us to enter those files repeatedly when building a glibc module. This can be unreverted once we have a better mechanism to deal with that non-modular aspect of glibc (possibly some way to mark a header as "textual if this macro is defined"). llvm-svn: 237718
* [modules] When a file is listed as a non-textual header in a module map, don'tRichard Smith2015-05-181-3/+3
| | | | | | | | | | enter it more than once, even if it doesn't have #include guards -- we already know that it is intended to have the same effect every time it's included, and it's already had that effect. This particularly helps with local submodule visibility builds, where the include guard macro may not be visible in the includer, but will become visible the moment we enter the included file. llvm-svn: 237609
* Remove shell requirements from tests that use 'cd'Reid Kleckner2015-03-021-3/+1
| | | | | | | | Modules and Tooling tests in particular tend to want to change the cwd, so we were missing test coverage in this area on Windows. It should now be easier to write such portable tests. llvm-svn: 231029
* [modules] If we import a module, and we've seen a module map that describes theRichard Smith2014-12-061-0/+8
| | | | | | | | | module, use the path from the module map file in preference to the path from the .pcm file when resolving relative paths in the .pcm file. This allows diagnostics (and .d output) to give relative paths if the module was found via a relative path. llvm-svn: 223577
* clang/test/Modules/malformed.cpp REQUIRES shell due to "cd".NAKAMURA Takumi2014-12-021-0/+2
| | | | llvm-svn: 223107
* [modules] Track how 'header' directives were written in module map files,Richard Smith2014-12-021-10/+14
| | | | | | | | | | | | | rather than trying to extract this information from the FileEntry after the fact. This has a number of beneficial effects. For instance, diagnostic messages for failed module builds give a path relative to the "module root" rather than an absolute file path, and the contents of the module includes file is no longer dependent on what files the including TU happened to inspect prior to triggering the module build. llvm-svn: 223095
* Fix module name collision in tests.Richard Smith2013-11-231-4/+4
| | | | llvm-svn: 195545
* Generate a marker token when entering or leaving a submodule when building aRichard Smith2013-11-231-0/+23
module. Use the marker to diagnose cases where we try to transition between submodules when not at the top level (most likely because a closing brace was missing at the end of a header file, but is also possible if submodule headers attempt to do something fundamentally non-modular, like our .def files). llvm-svn: 195543
OpenPOWER on IntegriCloud