]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/cppdefault.h
c++: Handle multiple aggregate overloads [PR95319].
[thirdparty/gcc.git] / gcc / cppdefault.h
CommitLineData
60893f43 1/* CPP Library.
8d9254fc 2 Copyright (C) 1986-2020 Free Software Foundation, Inc.
60893f43
ZW
3 Contributed by Per Bothner, 1994-95.
4 Based on CCCP program by Paul Rubin, June 1986
5 Adapted to ANSI C, Richard Stallman, Jan 1987
6
9dcd6f09
NC
7 This program is free software; you can redistribute it and/or modify it
8 under the terms of the GNU General Public License as published by the
9 Free Software Foundation; either version 3, or (at your option) any
10 later version.
60893f43 11
9dcd6f09
NC
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
60893f43 16
9dcd6f09
NC
17 You should have received a copy of the GNU General Public License
18 along with this program; see the file COPYING3. If not see
19 <http://www.gnu.org/licenses/>. */
60893f43 20
88657302
RH
21#ifndef GCC_CPPDEFAULT_H
22#define GCC_CPPDEFAULT_H
60893f43 23
60893f43
ZW
24/* This is the default list of directories to search for include files.
25 It may be overridden by the various -I and -ixxx options.
26
27 #include "file" looks in the same directory as the current file,
28 then this list.
29 #include <file> just looks in this list.
30
31 All these directories are treated as `system' include directories
32 (they are not subject to pedantic warnings in some cases). */
33
34struct default_include
35{
8b60264b
KG
36 const char *const fname; /* The name of the directory. */
37 const char *const component; /* The component containing the directory
60893f43 38 (see update_path in prefix.c) */
5793b276
NB
39 const char cplusplus; /* Only look here if we're compiling C++. */
40 const char cxx_aware; /* Includes in this directory don't need to
60893f43
ZW
41 be wrapped in extern "C" when compiling
42 C++. */
5793b276 43 const char add_sysroot; /* FNAME should be prefixed by
047d636f 44 cpp_SYSROOT. */
e0cdc09f
MK
45 const char multilib; /* FNAME should have appended
46 - the multilib path specified with -imultilib
47 when set to 1,
48 - the multiarch path specified with
49 -imultiarch, when set to 2. */
60893f43
ZW
50};
51
52extern const struct default_include cpp_include_defaults[];
53extern const char cpp_GCC_INCLUDE_DIR[];
54extern const size_t cpp_GCC_INCLUDE_DIR_len;
55
6d4817e3
MM
56/* The configure-time prefix, i.e., the value supplied as the argument
57 to --prefix=. */
76642aab 58extern const char cpp_PREFIX[];
6d4817e3 59/* The length of the configure-time prefix. */
76642aab 60extern const size_t cpp_PREFIX_len;
6d4817e3
MM
61/* The configure-time execution prefix. This is typically the lib/gcc
62 subdirectory of cpp_PREFIX. */
63extern const char cpp_EXEC_PREFIX[];
64/* The run-time execution prefix. This is typically the lib/gcc
65 subdirectory of the actual installation. */
76642aab
CD
66extern const char *gcc_exec_prefix;
67
68/* Return true if the toolchain is relocated. */
69bool cpp_relocated (void);
70
88657302 71#endif /* ! GCC_CPPDEFAULT_H */