This libgo patch declares runtime_usestackmaps in stack.c, not
runtime.h. This fixes https://gcc.gnu.org/PR92605. Bootstrapped and
ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline.
Ian
Index: gcc/go/gofrontend/MERGE
===================================================================
--- gcc/go/gofrontend/MERGE (revision 278539)
+++ gcc/go/gofrontend/MERGE (working copy)
@@ -1,4 +1,4 @@
-9cc7092b84c38d77d98ed856f1f613a6ca27122d
+017830d2a4bd2efbddf5e841ba9ccff8acf9d7c8
The first line of this file holds the git revision number of the last
merge done from the gofrontend repository.
Index: libgo/runtime/runtime.h
===================================================================
--- libgo/runtime/runtime.h (revision 277299)
+++ libgo/runtime/runtime.h (working copy)
@@ -475,7 +475,7 @@ bool scanstackwithmap(void*)
bool doscanstack(G*, void*)
__asm__("runtime.doscanstack");
-bool runtime_usestackmaps;
+extern bool runtime_usestackmaps;
bool probestackmaps(void)
__asm__("runtime.probestackmaps");
Index: libgo/runtime/stack.c
===================================================================
--- libgo/runtime/stack.c (revision 277299)
+++ libgo/runtime/stack.c (working copy)
@@ -16,6 +16,8 @@ extern void * __splitstack_find_context
#endif
+bool runtime_usestackmaps;
+
// Calling unwind_init in doscanstack only works if it does not do a
// tail call to doscanstack1.
#pragma GCC optimize ("-fno-optimize-sibling-calls")