diff --git a/go/internal/gcimporter/gcimporter_test.go b/go/internal/gcimporter/gcimporter_test.go
index c586f1f..e5eb9ed 100644
--- a/go/internal/gcimporter/gcimporter_test.go
+++ b/go/internal/gcimporter/gcimporter_test.go
@@ -22,7 +22,6 @@
 	"time"
 
 	"golang.org/x/tools/internal/testenv"
-	"golang.org/x/tools/internal/typeparams"
 )
 
 func TestMain(m *testing.M) {
@@ -107,12 +106,6 @@
 			for _, ext := range pkgExts {
 				if strings.HasSuffix(f.Name(), ext) {
 					name := f.Name()[0 : len(f.Name())-len(ext)] // remove extension
-					if testenv.UsesGenerics(name) && !typeparams.Enabled {
-						// golang/go#48632: Skip generic packages when type parameters are
-						// not enabled, as a temporary measure to allow avoiding the new
-						// go/types API on Go 1.18.
-						continue
-					}
 					if testPath(t, filepath.Join(dir, name), dir) != nil {
 						nimports++
 					}
diff --git a/go/internal/gcimporter/iexport_go118_test.go b/go/internal/gcimporter/iexport_go118_test.go
index 631d2b7..3c9610e 100644
--- a/go/internal/gcimporter/iexport_go118_test.go
+++ b/go/internal/gcimporter/iexport_go118_test.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-//go:build typeparams && go1.18
-// +build typeparams,go1.18
+//go:build go1.18
+// +build go1.18
 
 package gcimporter_test
 
diff --git a/go/internal/gcimporter/iexport_test.go b/go/internal/gcimporter/iexport_test.go
index f247d97..084679b 100644
--- a/go/internal/gcimporter/iexport_test.go
+++ b/go/internal/gcimporter/iexport_test.go
@@ -32,7 +32,6 @@
 	"golang.org/x/tools/go/internal/gcimporter"
 	"golang.org/x/tools/go/loader"
 	"golang.org/x/tools/internal/testenv"
-	"golang.org/x/tools/internal/typeparams"
 )
 
 func readExportFile(filename string) ([]byte, error) {
@@ -97,12 +96,9 @@
 	// TODO(#48595): fix this test with GOEXPERIMENT=unified.
 	isUnified := isUnifiedBuilder()
 	for _, path := range buildutil.AllPackages(conf.Build) {
-		if testenv.UsesGenerics(path) && (isUnified || !typeparams.Enabled) {
-			// golang/go#48632: Skip generic packages if we can't handle type
-			// parameters.
-			continue
+		if !(isUnified && testenv.UsesGenerics(path)) {
+			conf.Import(path)
 		}
-		conf.Import(path)
 	}
 
 	// Create a package containing type and value errors to ensure
diff --git a/go/internal/gcimporter/support_go117.go b/go/internal/gcimporter/support_go117.go
index 817a147..d892273 100644
--- a/go/internal/gcimporter/support_go117.go
+++ b/go/internal/gcimporter/support_go117.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-//go:build !typeparams || !go1.18
-// +build !typeparams !go1.18
+//go:build !go1.18
+// +build !go1.18
 
 package gcimporter
 
diff --git a/go/internal/gcimporter/support_go118.go b/go/internal/gcimporter/support_go118.go
index e6b81fc..2c98f0a 100644
--- a/go/internal/gcimporter/support_go118.go
+++ b/go/internal/gcimporter/support_go118.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-//go:build typeparams && go1.18
-// +build typeparams,go1.18
+//go:build go1.18
+// +build go1.18
 
 package gcimporter
 
diff --git a/internal/typeparams/enabled_go117.go b/internal/typeparams/enabled_go117.go
index 72d010e..1821239 100644
--- a/internal/typeparams/enabled_go117.go
+++ b/internal/typeparams/enabled_go117.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-//go:build !typeparams || !go1.18
-// +build !typeparams !go1.18
+//go:build !go1.18
+// +build !go1.18
 
 package typeparams
 
diff --git a/internal/typeparams/enabled_go118.go b/internal/typeparams/enabled_go118.go
index 642fc8e..d671488 100644
--- a/internal/typeparams/enabled_go118.go
+++ b/internal/typeparams/enabled_go118.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-//go:build typeparams && go1.18
-// +build typeparams,go1.18
+//go:build go1.18
+// +build go1.18
 
 package typeparams
 
diff --git a/internal/typeparams/typeparams_go117.go b/internal/typeparams/typeparams_go117.go
index 12817af..479b556 100644
--- a/internal/typeparams/typeparams_go117.go
+++ b/internal/typeparams/typeparams_go117.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-//go:build !typeparams || !go1.18
-// +build !typeparams !go1.18
+//go:build !go1.18
+// +build !go1.18
 
 package typeparams
 
diff --git a/internal/typeparams/typeparams_go118.go b/internal/typeparams/typeparams_go118.go
index 8ab17b7..16c6c0d 100644
--- a/internal/typeparams/typeparams_go118.go
+++ b/internal/typeparams/typeparams_go118.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-//go:build typeparams && go1.18
-// +build typeparams,go1.18
+//go:build go1.18
+// +build go1.18
 
 package typeparams
 
diff --git a/internal/typeparams/typeparams_test.go b/internal/typeparams/typeparams_test.go
index 68e6409..9302ad7 100644
--- a/internal/typeparams/typeparams_test.go
+++ b/internal/typeparams/typeparams_test.go
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-//go:build typeparams && go1.18
-// +build typeparams,go1.18
+//go:build go1.18
+// +build go1.18
 
 package typeparams_test
 
