aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2024-05-28 15:55:17 -0400
committerDavid Malcolm <dmalcolm@redhat.com>2024-05-28 15:55:17 -0400
commitfb7a943ead689e80e1ffdf6fa4e129dc155312d3 (patch)
treebc3d934e43cedbeb49729ffab5623f5148a713bb
parent7cc529fe514cc64e88208a6a7acfc6fe6419a453 (diff)
downloadgcc-fb7a943ead689e80e1ffdf6fa4e129dc155312d3.zip
gcc-fb7a943ead689e80e1ffdf6fa4e129dc155312d3.tar.gz
gcc-fb7a943ead689e80e1ffdf6fa4e129dc155312d3.tar.bz2
selftests: split out make_fndecl from selftest.h to its own header
Avoid selftest.h requiring the "tree" type. No functional change intended. gcc/analyzer/ChangeLog: * region-model.cc: Include "selftest-tree.h". gcc/ChangeLog: * function-tests.cc: Include "selftest-tree.h". * selftest-tree.h: New file. * selftest.h (make_fndecl): Move to selftest-tree.h. Signed-off-by: David Malcolm <dmalcolm@redhat.com>
-rw-r--r--gcc/analyzer/region-model.cc1
-rw-r--r--gcc/function-tests.cc1
-rw-r--r--gcc/selftest-tree.h41
-rw-r--r--gcc/selftest.h7
4 files changed, 43 insertions, 7 deletions
diff --git a/gcc/analyzer/region-model.cc b/gcc/analyzer/region-model.cc
index bebe2ed..0dd5671 100644
--- a/gcc/analyzer/region-model.cc
+++ b/gcc/analyzer/region-model.cc
@@ -42,6 +42,7 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic-color.h"
#include "bitmap.h"
#include "selftest.h"
+#include "selftest-tree.h"
#include "analyzer/analyzer.h"
#include "analyzer/analyzer-logging.h"
#include "ordered-hash-map.h"
diff --git a/gcc/function-tests.cc b/gcc/function-tests.cc
index 8277344..ea3d722 100644
--- a/gcc/function-tests.cc
+++ b/gcc/function-tests.cc
@@ -76,6 +76,7 @@ along with GCC; see the file COPYING3. If not see
#include "ipa-ref.h"
#include "cgraph.h"
#include "selftest.h"
+#include "selftest-tree.h"
#include "print-rtl.h"
#if CHECKING_P
diff --git a/gcc/selftest-tree.h b/gcc/selftest-tree.h
new file mode 100644
index 0000000..9922af3
--- /dev/null
+++ b/gcc/selftest-tree.h
@@ -0,0 +1,41 @@
+/* A self-testing framework, for use by -fself-test.
+ Copyright (C) 2015-2024 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 GCC_SELFTEST_TREE_H
+#define GCC_SELFTEST_TREE_H
+
+/* The selftest code should entirely disappear in a production
+ configuration, hence we guard all of it with #if CHECKING_P. */
+
+#if CHECKING_P
+
+namespace selftest {
+
+/* Helper function for selftests that need a function decl. */
+
+extern tree make_fndecl (tree return_type,
+ const char *name,
+ vec <tree> &param_types,
+ bool is_variadic = false);
+
+} /* end of namespace selftest. */
+
+#endif /* #if CHECKING_P */
+
+#endif /* GCC_SELFTEST_TREE_H */
diff --git a/gcc/selftest.h b/gcc/selftest.h
index 3bddaf1..808d432 100644
--- a/gcc/selftest.h
+++ b/gcc/selftest.h
@@ -178,13 +178,6 @@ class line_table_test
~line_table_test ();
};
-/* Helper function for selftests that need a function decl. */
-
-extern tree make_fndecl (tree return_type,
- const char *name,
- vec <tree> &param_types,
- bool is_variadic = false);
-
/* Run TESTCASE multiple times, once for each case in our test matrix. */
extern void