1*5ba1f45fSchristos /* Copyright (C) 2017-2024 Free Software Foundation, Inc. 28dffb485Schristos 38dffb485Schristos This file is part of GDB. 48dffb485Schristos 58dffb485Schristos This program is free software; you can redistribute it and/or modify 68dffb485Schristos it under the terms of the GNU General Public License as published by 78dffb485Schristos the Free Software Foundation; either version 3 of the License, or 88dffb485Schristos (at your option) any later version. 98dffb485Schristos 108dffb485Schristos This program is distributed in the hope that it will be useful, 118dffb485Schristos but WITHOUT ANY WARRANTY; without even the implied warranty of 128dffb485Schristos MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 138dffb485Schristos GNU General Public License for more details. 148dffb485Schristos 158dffb485Schristos You should have received a copy of the GNU General Public License 168dffb485Schristos along with this program. If not, see <http://www.gnu.org/licenses/>. */ 178dffb485Schristos 188dffb485Schristos #ifndef COMMON_PREPROCESSOR_H 198dffb485Schristos #define COMMON_PREPROCESSOR_H 208dffb485Schristos 218dffb485Schristos /* Generally useful preprocessor bits. */ 228dffb485Schristos 238dffb485Schristos /* Concatenate two tokens. */ 248dffb485Schristos #define CONCAT_1(a, b) a ## b 258dffb485Schristos #define CONCAT(a, b) CONCAT_1 (a, b) 268dffb485Schristos 278dffb485Schristos /* Stringification. */ 288dffb485Schristos #define STRINGIFY_1(x) #x 298dffb485Schristos #define STRINGIFY(x) STRINGIFY_1 (x) 308dffb485Schristos 318dffb485Schristos /* Escape parens out. Useful if you need to pass an argument that 328dffb485Schristos includes commas to another macro. */ 338dffb485Schristos #define ESC_PARENS(...) __VA_ARGS__ 348dffb485Schristos 358dffb485Schristos #endif /* COMMON_PREPROCESSOR_H */ 36