| // errorcheck -0 -+ -p=runtime -m |
| |
| // Copyright 2019 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. |
| |
| package runtime |
| |
| // A function that calls runtime.getcallerpc or runtime.getcallersp() |
| // cannot be inlined, no matter how small it is. |
| |
| func getcallerpc() uintptr |
| func getcallersp() uintptr |
| |
| func pc() uintptr { |
| return getcallerpc() + 1 |
| } |
| |
| func cpc() uintptr { // ERROR "can inline cpc" |
| return pc() + 2 |
| } |
| |
| func sp() uintptr { |
| return getcallersp() + 3 |
| } |
| |
| func csp() uintptr { // ERROR "can inline csp" |
| return sp() + 4 |
| } |