| Server IP : 217.160.0.212 / Your IP : 216.73.216.141 Web Server : Apache System : Linux www 6.18.51-i1-ampere #1196 SMP Fri Sep 11 20:43:55 CEST 2026 aarch64 User : sws1073854427 ( 1073854427) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /lib/go/src/cmd/go/testdata/script/ |
Upload File : |
# This is a test that -trimpath trims the paths of every directory
# of Cgo dependencies in the module, and trims file paths included
# through the __FILE__ macro using --file-prefix-map.
[!cgo] skip
[short] skip 'links and runs binaries'
# Test in main module.
go run -trimpath -mod=vendor ./main
stdout '(\\_\\_|/_)[\\/]m[\\/]c[\\/]bar.h'
# Test in vendored module.
go run -trimpath -mod=vendor v.com/main
stdout '(\\_\\_|/_)[\\/]vendor[\\/]v.com[\\/]c[\\/]bar.h'
# Test in GOPATH mode.
env GO111MODULE=off
go run -trimpath ./main
stdout '(\\_\\_|/_)[\\/]GOPATH[\\/]src[\\/]c[\\/]bar.h'
-- go.mod --
module m
require v.com v1.0.0
-- go.sum --
v.com v1.0.0 h1:xxx
v.com v1.0.0/go.mod h1:xxx
-- vendor/modules.txt --
# v.com v1.0.0
## explicit; go 1.20
v.com/main
-- vendor/v.com/main/main.go --
package main
// #cgo CFLAGS: -I../c
// #include "stdio.h"
// void printfile();
import "C"
func main() {
C.printfile()
C.fflush(C.stdout)
}
-- vendor/v.com/main/foo.c --
#include "bar.h"
-- vendor/v.com/c/bar.h --
#include "stdio.h"
void printfile() {
printf("%s\n", __FILE__);
}
-- main/main.go --
package main
// #cgo CFLAGS: -I../c
// #include "stdio.h"
// void printfile();
import "C"
func main() {
C.printfile()
C.fflush(C.stdout)
}
-- main/foo.c --
#include "bar.h"
-- c/bar.h --
#include "stdio.h"
void printfile() {
printf("%s\n", __FILE__);
}