package main import ( "fmt" "path" "reflect" "runtime" ) func someFunc() { fmt.Println("someFunc called") } func main() { pc := reflect.ValueOf(someFunc).Pointer() f := runtime.FuncForPC(pc) name := f.Name() file, line := f.FileLine(pc) fmt.Println("Name of function :", name) fmt.Println("Name of file :", path.Base(file)) fmt.Println("Line number :", line) }