| /* String declarations. |
| Copyright (C) 2014-2022 Free Software Foundation, Inc. |
| |
| This file is part of GCC. |
| |
| GCC is free software; you can redistribute it and/or modify it under |
| the terms of the GNU General Public License as published by the Free |
| Software Foundation; either version 3, or (at your option) any later |
| version. |
| |
| GCC is distributed in the hope that it will be useful, but WITHOUT ANY |
| WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
| for more details. |
| |
| You should have received a copy of the GNU General Public License |
| along with GCC; see the file COPYING3. If not see |
| <http://www.gnu.org/licenses/>. */ |
| |
| #ifndef CC1_PLUGIN_NAMES_HH |
| #define CC1_PLUGIN_NAMES_HH |
| |
| namespace cc1_plugin |
| { |
| #define GCC_METHOD0(R, N) \ |
| extern const char *N; |
| #define GCC_METHOD1(R, N, A) \ |
| extern const char *N; |
| #define GCC_METHOD2(R, N, A, B) \ |
| extern const char *N; |
| #define GCC_METHOD3(R, N, A, B, C) \ |
| extern const char *N; |
| #define GCC_METHOD4(R, N, A, B, C, D) \ |
| extern const char *N; |
| #define GCC_METHOD5(R, N, A, B, C, D, E) \ |
| extern const char *N; |
| #define GCC_METHOD7(R, N, A, B, C, D, E, F, G) \ |
| extern const char *N; |
| |
| namespace c |
| { |
| // This code defines global string constants, one for each method in |
| // gcc-c-fe.def. This is needed so that they can be used as |
| // template arguments elsewhere. |
| #include "gcc-c-fe.def" |
| } |
| |
| namespace cp |
| { |
| // This code defines global string constants, one for each method in |
| // gcc-cp-fe.def. This is needed so that they can be used as |
| // template arguments elsewhere. |
| #include "gcc-cp-fe.def" |
| } |
| |
| #undef GCC_METHOD0 |
| #undef GCC_METHOD1 |
| #undef GCC_METHOD2 |
| #undef GCC_METHOD3 |
| #undef GCC_METHOD4 |
| #undef GCC_METHOD5 |
| #undef GCC_METHOD7 |
| }; |
| |
| #endif // CC1_PLUGIN_NAMES_HH |