1
0
mirror of https://github.com/golang/go synced 2024-11-23 05:40:04 -07:00

internal/abi: repair broken self-bootstrap

Fixes bug caused by https://go.dev/cl/462115

Change-Id: Id91a139db827f2962be837b8fd218e7b895ce8b9
Reviewed-on: https://go-review.googlesource.com/c/go/+/463175
Reviewed-by: Austin Clements <austin@google.com>
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
This commit is contained in:
David Chase 2023-01-23 13:29:32 -05:00
parent b90971b292
commit 0c8480acfe
2 changed files with 9 additions and 8 deletions

View File

@ -2,14 +2,8 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
//go:build !compiler_bootstrap
// +build !compiler_bootstrap
package abi
// The bootstrapping compiler doesn't understand "any" in the function signatures,
// and also does not implement these intrinsics.
// FuncPC* intrinsics.
//
// CAREFUL: In programs with plugins, FuncPC* can return different values
@ -23,7 +17,7 @@ package abi
// compile-time error.
//
// Implemented as a compile intrinsic.
func FuncPCABI0(f any) uintptr
func FuncPCABI0(f interface{}) uintptr
// FuncPCABIInternal returns the entry PC of the function f. If f is a
// direct reference of a function, it must be defined as ABIInternal.
@ -32,4 +26,4 @@ func FuncPCABI0(f any) uintptr
// the behavior is undefined.
//
// Implemented as a compile intrinsic.
func FuncPCABIInternal(f any) uintptr
func FuncPCABIInternal(f interface{}) uintptr

7
src/internal/abi/stub.s Normal file
View File

@ -0,0 +1,7 @@
// Copyright 2023 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// This file silences errors about body-less functions
// that are provided by intrinsics in the latest version of the compiler,
// but may not be known to the bootstrap compiler.