From 7a15cf1157f5c26287f4b4b5acf414c834411525 Mon Sep 17 00:00:00 2001 From: xushiwei Date: Tue, 18 Jun 2024 13:50:55 +0800 Subject: [PATCH] patch: errors (todo) --- cl/_testlibgo/_errors/in.go | 8 ++++++++ cl/import.go | 3 +-- internal/build/build.go | 3 ++- internal/lib/errors/errors.go | 17 +++++++++++++++++ 4 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 cl/_testlibgo/_errors/in.go create mode 100644 internal/lib/errors/errors.go diff --git a/cl/_testlibgo/_errors/in.go b/cl/_testlibgo/_errors/in.go new file mode 100644 index 00000000..e833b256 --- /dev/null +++ b/cl/_testlibgo/_errors/in.go @@ -0,0 +1,8 @@ +package main + +import "errors" + +func main() { + err := errors.New("error") + panic(err) +} diff --git a/cl/import.go b/cl/import.go index cf71b379..63d80bb4 100644 --- a/cl/import.go +++ b/cl/import.go @@ -507,8 +507,7 @@ func ignoreName(name string) bool { strings.HasPrefix(name, "arena.") || strings.HasPrefix(name, "maps.") || strings.HasPrefix(name, "time.") || strings.HasPrefix(name, "syscall.") || strings.HasPrefix(name, "os.") || strings.HasPrefix(name, "plugin.") || - strings.HasPrefix(name, "reflect.") || strings.HasPrefix(name, "errors.") || - strings.HasPrefix(name, "runtime/") + strings.HasPrefix(name, "reflect.") || strings.HasPrefix(name, "runtime/") } // ----------------------------------------------------------------------------- diff --git a/internal/build/build.go b/internal/build/build.go index b25ef650..e3e1da8e 100644 --- a/internal/build/build.go +++ b/internal/build/build.go @@ -706,7 +706,7 @@ func decodeFile(outFile string, zipf *zip.File) (err error) { func canSkipToBuild(pkgPath string) bool { switch pkgPath { - case "unsafe", "errors": // TODO(xsw): remove it + case "unsafe": return true default: return strings.HasPrefix(pkgPath, "internal/") || @@ -717,6 +717,7 @@ func canSkipToBuild(pkgPath string) bool { type none struct{} var hasAltPkg = map[string]none{ + "errors": {}, "math": {}, "sync": {}, "sync/atomic": {}, diff --git a/internal/lib/errors/errors.go b/internal/lib/errors/errors.go new file mode 100644 index 00000000..465fac10 --- /dev/null +++ b/internal/lib/errors/errors.go @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2024 The GoPlus Authors (goplus.org). All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package errors