internal_gengo: use unsafe.StringData() to avoid a descriptor copy

This means our generated code requires Go 1.20+.
(Go Protobuf currently requires at least Go 1.21.)

Change-Id: Ie65be553bcb5912991d590104ff6b7c6a82b9c38
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/642055
Reviewed-by: Nicolas Hillegeer <aktau@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Damien Neil <dneil@google.com>
diff --git a/cmd/protoc-gen-go/internal_gengo/main.go b/cmd/protoc-gen-go/internal_gengo/main.go
index 9302b77..a58058c 100644
--- a/cmd/protoc-gen-go/internal_gengo/main.go
+++ b/cmd/protoc-gen-go/internal_gengo/main.go
@@ -50,6 +50,7 @@
 	syncPackage    = protogen.GoImportPath("sync")
 	timePackage    = protogen.GoImportPath("time")
 	utf8Package    = protogen.GoImportPath("unicode/utf8")
+	unsafePackage  = protogen.GoImportPath("unsafe")
 )
 
 // Protobuf library dependencies.
diff --git a/cmd/protoc-gen-go/internal_gengo/reflect.go b/cmd/protoc-gen-go/internal_gengo/reflect.go
index 2cf204f..d44e55e 100644
--- a/cmd/protoc-gen-go/internal_gengo/reflect.go
+++ b/cmd/protoc-gen-go/internal_gengo/reflect.go
@@ -187,7 +187,12 @@
 	g.P("out := ", protoimplPackage.Ident("TypeBuilder"), "{")
 	g.P("File: ", protoimplPackage.Ident("DescBuilder"), "{")
 	g.P("GoPackagePath: ", reflectPackage.Ident("TypeOf"), "(x{}).PkgPath(),")
-	g.P("RawDescriptor: []byte(", rawDescVarName(f), "),")
+	// Avoid a copy of the descriptor by using an inlined version of
+	// [strs.UnsafeBytes] (gencode cannot depend on internal/strs).
+	// This means modification of the RawDescriptor byte slice
+	// will crash the program. But generated RawDescriptors
+	// are never supposed to be modified anyway.
+	g.P("RawDescriptor: ", unsafePackage.Ident("Slice"), "(", unsafePackage.Ident("StringData"), "(", rawDescVarName(f), "), len(", rawDescVarName(f), ")),")
 	g.P("NumEnums: ", len(f.allEnums), ",")
 	g.P("NumMessages: ", len(f.allMessages), ",")
 	g.P("NumExtensions: ", len(f.allExtensions), ",")
diff --git a/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go b/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go
index 19e5a88..f7bada2 100644
--- a/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go
+++ b/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type AnnotationsTestEnum int32
@@ -170,7 +171,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_annotations_annotations_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_annotations_annotations_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_annotations_annotations_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go.meta b/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go.meta
index 6aec448..1e0ce14 100644
--- a/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go.meta
+++ b/cmd/protoc-gen-go/testdata/annotations/annotations.pb.go.meta
@@ -1 +1 @@
-annotation:{path:5 path:0 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:512 end:531} annotation:{path:5 path:0 path:2 path:0 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:548 end:595} annotation:{path:4 path:0 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:1954 end:1976} annotation:{path:4 path:0 path:2 path:0 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:2053 end:2073} annotation:{path:4 path:0 path:2 path:1 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:2256 end:2266} annotation:{path:4 path:0 path:2 path:0 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:3437 end:3460} annotation:{path:4 path:0 path:2 path:1 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:3603 end:3607} annotation:{path:4 path:0 path:2 path:1 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:3770 end:3774 semantic:SET}
\ No newline at end of file
+annotation:{path:5 path:0 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:529 end:548} annotation:{path:5 path:0 path:2 path:0 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:565 end:612} annotation:{path:4 path:0 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:1971 end:1993} annotation:{path:4 path:0 path:2 path:0 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:2070 end:2090} annotation:{path:4 path:0 path:2 path:1 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:2273 end:2283} annotation:{path:4 path:0 path:2 path:0 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:3454 end:3477} annotation:{path:4 path:0 path:2 path:1 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:3620 end:3624} annotation:{path:4 path:0 path:2 path:1 source_file:"cmd/protoc-gen-go/testdata/annotations/annotations.proto" begin:3787 end:3791 semantic:SET}
\ No newline at end of file
diff --git a/cmd/protoc-gen-go/testdata/comments/comments.pb.go b/cmd/protoc-gen-go/testdata/comments/comments.pb.go
index 3ec5831..71b5791 100644
--- a/cmd/protoc-gen-go/testdata/comments/comments.pb.go
+++ b/cmd/protoc-gen-go/testdata/comments/comments.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // COMMENT: Enum1.Leading
@@ -408,7 +409,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_comments_comments_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_comments_comments_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_comments_comments_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   6,
 			NumExtensions: 1,
diff --git a/cmd/protoc-gen-go/testdata/comments/deprecated.pb.go b/cmd/protoc-gen-go/testdata/comments/deprecated.pb.go
index 34c4708..58d829b 100644
--- a/cmd/protoc-gen-go/testdata/comments/deprecated.pb.go
+++ b/cmd/protoc-gen-go/testdata/comments/deprecated.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // Deprecated: The entire proto file cmd/protoc-gen-go/testdata/comments/deprecated.proto is marked as deprecated.
@@ -145,7 +146,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_comments_deprecated_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_comments_deprecated_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_comments_deprecated_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/enumprefix/enumprefix.pb.go b/cmd/protoc-gen-go/testdata/enumprefix/enumprefix.pb.go
index cf5ae3c..989ce54 100644
--- a/cmd/protoc-gen-go/testdata/enumprefix/enumprefix.pb.go
+++ b/cmd/protoc-gen-go/testdata/enumprefix/enumprefix.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Strip int32
@@ -217,7 +218,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_enumprefix_enumprefix_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_enumprefix_enumprefix_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_enumprefix_enumprefix_proto_rawDesc)),
 			NumEnums:      4,
 			NumMessages:   0,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/extensions/base/base.pb.go b/cmd/protoc-gen-go/testdata/extensions/base/base.pb.go
index 6913ed0..f4edfdb 100644
--- a/cmd/protoc-gen-go/testdata/extensions/base/base.pb.go
+++ b/cmd/protoc-gen-go/testdata/extensions/base/base.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type BaseMessage struct {
@@ -134,7 +135,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_extensions_base_base_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_extensions_base_base_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_extensions_base_base_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   2,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go b/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go
index 6a96cbb..9f946e1 100644
--- a/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go
+++ b/cmd/protoc-gen-go/testdata/extensions/ext/ext.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -945,7 +946,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   8,
 			NumExtensions: 44,
diff --git a/cmd/protoc-gen-go/testdata/extensions/extra/extra.pb.go b/cmd/protoc-gen-go/testdata/extensions/extra/extra.pb.go
index 04f0040..0774258 100644
--- a/cmd/protoc-gen-go/testdata/extensions/extra/extra.pb.go
+++ b/cmd/protoc-gen-go/testdata/extensions/extra/extra.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ExtraMessage struct {
@@ -95,7 +96,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_extensions_extra_extra_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_extensions_extra_extra_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_extensions_extra_extra_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.pb.go b/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.pb.go
index 8d3d61e..3440f00 100644
--- a/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.pb.go
+++ b/cmd/protoc-gen-go/testdata/extensions/proto3/ext3.pb.go
@@ -13,6 +13,7 @@
 	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -519,7 +520,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_extensions_proto3_ext3_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_extensions_proto3_ext3_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_extensions_proto3_ext3_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 34,
diff --git a/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.pb.go b/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.pb.go
index d3f9db1..52b088a 100644
--- a/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.pb.go
+++ b/cmd/protoc-gen-go/testdata/fieldnames/fieldnames.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // Assorted edge cases in field name conflict resolution.
@@ -363,7 +364,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_fieldnames_fieldnames_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_fieldnames_fieldnames_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_fieldnames_fieldnames_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   2,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/import_public/a.pb.go b/cmd/protoc-gen-go/testdata/import_public/a.pb.go
index 208976c..8612d3c 100644
--- a/cmd/protoc-gen-go/testdata/import_public/a.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/a.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // Symbols defined in public import of cmd/protoc-gen-go/testdata/import_public/sub/a.proto.
@@ -157,7 +158,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_import_public_a_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_import_public_a_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_import_public_a_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/import_public/b.pb.go b/cmd/protoc-gen-go/testdata/import_public/b.pb.go
index be811f7..75f278b 100644
--- a/cmd/protoc-gen-go/testdata/import_public/b.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/b.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Local struct {
@@ -108,7 +109,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_import_public_b_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_import_public_b_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_import_public_b_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/import_public/c.pb.go b/cmd/protoc-gen-go/testdata/import_public/c.pb.go
index 47a5e48..95020cc 100644
--- a/cmd/protoc-gen-go/testdata/import_public/c.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/c.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type UsingPublicImport struct {
@@ -112,7 +113,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_import_public_c_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_import_public_c_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_import_public_c_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/import_public/sub/a.pb.go b/cmd/protoc-gen-go/testdata/import_public/sub/a.pb.go
index 3688b9f..bae4a0c 100644
--- a/cmd/protoc-gen-go/testdata/import_public/sub/a.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/sub/a.pb.go
@@ -14,6 +14,7 @@
 	math "math"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // Symbols defined in public import of cmd/protoc-gen-go/testdata/import_public/sub2/a.proto.
@@ -459,7 +460,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_import_public_sub_a_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_import_public_sub_a_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_import_public_sub_a_proto_rawDesc)),
 			NumEnums:      3,
 			NumMessages:   2,
 			NumExtensions: 1,
diff --git a/cmd/protoc-gen-go/testdata/import_public/sub/b.pb.go b/cmd/protoc-gen-go/testdata/import_public/sub/b.pb.go
index f8e21f9..c58b164 100644
--- a/cmd/protoc-gen-go/testdata/import_public/sub/b.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/sub/b.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type M2 struct {
@@ -87,7 +88,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_import_public_sub_b_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_import_public_sub_b_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_import_public_sub_b_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/import_public/sub2/a.pb.go b/cmd/protoc-gen-go/testdata/import_public/sub2/a.pb.go
index c6c6b6b..29b26a1 100644
--- a/cmd/protoc-gen-go/testdata/import_public/sub2/a.pb.go
+++ b/cmd/protoc-gen-go/testdata/import_public/sub2/a.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Sub2Message struct {
@@ -87,7 +88,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_import_public_sub2_a_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_import_public_sub2_a_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_import_public_sub2_a_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/imports/fmt/m.pb.go b/cmd/protoc-gen-go/testdata/imports/fmt/m.pb.go
index 24d78a5..c7eae6b 100644
--- a/cmd/protoc-gen-go/testdata/imports/fmt/m.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/fmt/m.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type M struct {
@@ -87,7 +88,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_imports_fmt_m_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_imports_fmt_m_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_imports_fmt_m_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/imports/test_a_1/m1.pb.go b/cmd/protoc-gen-go/testdata/imports/test_a_1/m1.pb.go
index 64d9cb4..700eac5 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_a_1/m1.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_a_1/m1.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type E1 int32
@@ -178,7 +179,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_imports_test_a_1_m1_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_imports_test_a_1_m1_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_imports_test_a_1_m1_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   2,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/imports/test_a_1/m2.pb.go b/cmd/protoc-gen-go/testdata/imports/test_a_1/m2.pb.go
index 293c55d..b187a8c 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_a_1/m2.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_a_1/m2.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type M2 struct {
@@ -87,7 +88,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_imports_test_a_1_m2_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_imports_test_a_1_m2_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_imports_test_a_1_m2_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/imports/test_a_2/m3.pb.go b/cmd/protoc-gen-go/testdata/imports/test_a_2/m3.pb.go
index 8798b84..14613d2 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_a_2/m3.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_a_2/m3.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type M3 struct {
@@ -87,7 +88,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_imports_test_a_2_m3_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_imports_test_a_2_m3_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_imports_test_a_2_m3_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/imports/test_a_2/m4.pb.go b/cmd/protoc-gen-go/testdata/imports/test_a_2/m4.pb.go
index 7294c4a..fd06023 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_a_2/m4.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_a_2/m4.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type M4 struct {
@@ -87,7 +88,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_imports_test_a_2_m4_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_imports_test_a_2_m4_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_imports_test_a_2_m4_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/imports/test_b_1/m1.pb.go b/cmd/protoc-gen-go/testdata/imports/test_b_1/m1.pb.go
index 6104504..82cf84c 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_b_1/m1.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_b_1/m1.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type M1 struct {
@@ -87,7 +88,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_imports_test_b_1_m1_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_imports_test_b_1_m1_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_imports_test_b_1_m1_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/imports/test_b_1/m2.pb.go b/cmd/protoc-gen-go/testdata/imports/test_b_1/m2.pb.go
index b548576..1faafba 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_b_1/m2.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_b_1/m2.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type M2 struct {
@@ -87,7 +88,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_imports_test_b_1_m2_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_imports_test_b_1_m2_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_imports_test_b_1_m2_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/imports/test_import_a1m1.pb.go b/cmd/protoc-gen-go/testdata/imports/test_import_a1m1.pb.go
index bf940e5..341abc3 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_import_a1m1.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_import_a1m1.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type A1M1 struct {
@@ -98,7 +99,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_imports_test_import_a1m1_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_imports_test_import_a1m1_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_imports_test_import_a1m1_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/imports/test_import_a1m2.pb.go b/cmd/protoc-gen-go/testdata/imports/test_import_a1m2.pb.go
index 92adc71..b974d5e 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_import_a1m2.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_import_a1m2.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type A1M2 struct {
@@ -98,7 +99,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_imports_test_import_a1m2_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_imports_test_import_a1m2_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_imports_test_import_a1m2_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/imports/test_import_all.pb.go b/cmd/protoc-gen-go/testdata/imports/test_import_all.pb.go
index f4683a3..2d0ec30 100644
--- a/cmd/protoc-gen-go/testdata/imports/test_import_all.pb.go
+++ b/cmd/protoc-gen-go/testdata/imports/test_import_all.pb.go
@@ -16,6 +16,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type All struct {
@@ -141,7 +142,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_imports_test_import_all_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_imports_test_import_all_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_imports_test_import_all_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/issue780_oneof_conflict/test.pb.go b/cmd/protoc-gen-go/testdata/issue780_oneof_conflict/test.pb.go
index 9ddabcb..224933c 100644
--- a/cmd/protoc-gen-go/testdata/issue780_oneof_conflict/test.pb.go
+++ b/cmd/protoc-gen-go/testdata/issue780_oneof_conflict/test.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Foo struct {
@@ -120,7 +121,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_issue780_oneof_conflict_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_issue780_oneof_conflict_test_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_issue780_oneof_conflict_test_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid/test_name_clash_hybrid.pb.go b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid/test_name_clash_hybrid.pb.go
index bbfb9c4..1ec86a7 100644
--- a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid/test_name_clash_hybrid.pb.go
+++ b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid/test_name_clash_hybrid.pb.go
@@ -33,6 +33,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type M1 struct {
@@ -3672,7 +3673,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   20,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid/test_name_clash_hybrid_protoopaque.pb.go b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid/test_name_clash_hybrid_protoopaque.pb.go
index 068d91d..bd6ea48 100644
--- a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid/test_name_clash_hybrid_protoopaque.pb.go
+++ b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid/test_name_clash_hybrid_protoopaque.pb.go
@@ -33,6 +33,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type M1 struct {
@@ -3385,7 +3386,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   20,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid3/test_name_clash_hybrid3.pb.go b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid3/test_name_clash_hybrid3.pb.go
index da039f2..3f4efbd 100644
--- a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid3/test_name_clash_hybrid3.pb.go
+++ b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid3/test_name_clash_hybrid3.pb.go
@@ -33,6 +33,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type M0 struct {
@@ -3763,7 +3764,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid3_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid3_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid3_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   21,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid3/test_name_clash_hybrid3_protoopaque.pb.go b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid3/test_name_clash_hybrid3_protoopaque.pb.go
index b7268ac..1b66171 100644
--- a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid3/test_name_clash_hybrid3_protoopaque.pb.go
+++ b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_hybrid3/test_name_clash_hybrid3_protoopaque.pb.go
@@ -33,6 +33,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type M0 struct {
@@ -3271,7 +3272,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid3_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid3_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_hybrid3_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   21,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_opaque/test_name_clash_opaque.pb.go b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_opaque/test_name_clash_opaque.pb.go
index 2ff44f0..005672a 100644
--- a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_opaque/test_name_clash_opaque.pb.go
+++ b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_opaque/test_name_clash_opaque.pb.go
@@ -31,6 +31,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type M1 struct {
@@ -3383,7 +3384,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_opaque_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_opaque_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   20,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_opaque3/test_name_clash_opaque3.pb.go b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_opaque3/test_name_clash_opaque3.pb.go
index b0da4ef..2b475f0 100644
--- a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_opaque3/test_name_clash_opaque3.pb.go
+++ b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_opaque3/test_name_clash_opaque3.pb.go
@@ -31,6 +31,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type M0 struct {
@@ -3269,7 +3270,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_opaque3_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_opaque3_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_opaque3_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   21,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_open/test_name_clash_open.pb.go b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_open/test_name_clash_open.pb.go
index 168c674..08688c1 100644
--- a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_open/test_name_clash_open.pb.go
+++ b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_open/test_name_clash_open.pb.go
@@ -32,6 +32,7 @@
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type M1 struct {
@@ -856,7 +857,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_open_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_open_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_open_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   9,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_open3/test_name_clash_open3.pb.go b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_open3/test_name_clash_open3.pb.go
index 9af4d4f..3dad284 100644
--- a/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_open3/test_name_clash_open3.pb.go
+++ b/cmd/protoc-gen-go/testdata/nameclash/test_name_clash_open3/test_name_clash_open3.pb.go
@@ -32,6 +32,7 @@
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type M0 struct {
@@ -920,7 +921,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_open3_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_open3_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_nameclash_test_name_clash_open3_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   10,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/nopackage/nopackage.pb.go b/cmd/protoc-gen-go/testdata/nopackage/nopackage.pb.go
index 817bb1c..472af9b 100644
--- a/cmd/protoc-gen-go/testdata/nopackage/nopackage.pb.go
+++ b/cmd/protoc-gen-go/testdata/nopackage/nopackage.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -164,7 +165,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_nopackage_nopackage_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_nopackage_nopackage_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_nopackage_nopackage_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/proto2/enum.pb.go b/cmd/protoc-gen-go/testdata/proto2/enum.pb.go
index 37ef414..2dc6fe4 100644
--- a/cmd/protoc-gen-go/testdata/proto2/enum.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto2/enum.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // EnumType1 comment.
@@ -486,7 +487,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_proto2_enum_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_proto2_enum_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_proto2_enum_proto_rawDesc)),
 			NumEnums:      6,
 			NumMessages:   2,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/proto2/fields.pb.go b/cmd/protoc-gen-go/testdata/proto2/fields.pb.go
index 8b62d34..d83e95e 100644
--- a/cmd/protoc-gen-go/testdata/proto2/fields.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto2/fields.pb.go
@@ -13,6 +13,7 @@
 	math "math"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type FieldTestMessage_Enum int32
@@ -1451,7 +1452,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_proto2_fields_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_proto2_fields_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_proto2_fields_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   9,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/proto2/nested_messages.pb.go b/cmd/protoc-gen-go/testdata/proto2/nested_messages.pb.go
index 7455a0c..829ee66 100644
--- a/cmd/protoc-gen-go/testdata/proto2/nested_messages.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto2/nested_messages.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Layer1 struct {
@@ -188,7 +189,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_proto2_nested_messages_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_proto2_nested_messages_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_proto2_nested_messages_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   3,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/proto2/proto2.pb.go b/cmd/protoc-gen-go/testdata/proto2/proto2.pb.go
index 6a537ee..9c0fa4f 100644
--- a/cmd/protoc-gen-go/testdata/proto2/proto2.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto2/proto2.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Message struct {
@@ -104,7 +105,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_proto2_proto2_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_proto2_proto2_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_proto2_proto2_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/proto3/enum.pb.go b/cmd/protoc-gen-go/testdata/proto3/enum.pb.go
index 62eec77..b5fce1a 100644
--- a/cmd/protoc-gen-go/testdata/proto3/enum.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto3/enum.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -100,7 +101,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_proto3_enum_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_proto3_enum_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_proto3_enum_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   0,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/proto3/fields.pb.go b/cmd/protoc-gen-go/testdata/proto3/fields.pb.go
index a0f8f55..9894d86 100644
--- a/cmd/protoc-gen-go/testdata/proto3/fields.pb.go
+++ b/cmd/protoc-gen-go/testdata/proto3/fields.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type FieldTestMessage_Enum int32
@@ -477,7 +478,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_proto3_fields_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_proto3_fields_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_proto3_fields_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   5,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/protoeditions/enum.pb.go b/cmd/protoc-gen-go/testdata/protoeditions/enum.pb.go
index 3e31683..50bd131 100644
--- a/cmd/protoc-gen-go/testdata/protoeditions/enum.pb.go
+++ b/cmd/protoc-gen-go/testdata/protoeditions/enum.pb.go
@@ -13,6 +13,7 @@
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // EnumType1 comment.
@@ -487,7 +488,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_protoeditions_enum_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_protoeditions_enum_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_protoeditions_enum_proto_rawDesc)),
 			NumEnums:      7,
 			NumMessages:   2,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/protoeditions/fields.pb.go b/cmd/protoc-gen-go/testdata/protoeditions/fields.pb.go
index cf010a4..a2e1642 100644
--- a/cmd/protoc-gen-go/testdata/protoeditions/fields.pb.go
+++ b/cmd/protoc-gen-go/testdata/protoeditions/fields.pb.go
@@ -13,6 +13,7 @@
 	math "math"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type FieldTestMessage_Enum int32
@@ -1441,7 +1442,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_protoeditions_fields_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_protoeditions_fields_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_protoeditions_fields_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   9,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/protoeditions/legacy_enum.pb.go b/cmd/protoc-gen-go/testdata/protoeditions/legacy_enum.pb.go
index dc62691..ca24584 100644
--- a/cmd/protoc-gen-go/testdata/protoeditions/legacy_enum.pb.go
+++ b/cmd/protoc-gen-go/testdata/protoeditions/legacy_enum.pb.go
@@ -13,6 +13,7 @@
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // EnumTypeWithLegacyUnmarshalJSON comment.
@@ -255,7 +256,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_protoeditions_legacy_enum_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_protoeditions_legacy_enum_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_protoeditions_legacy_enum_proto_rawDesc)),
 			NumEnums:      3,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/protoeditions/maps_and_delimited.pb.go b/cmd/protoc-gen-go/testdata/protoeditions/maps_and_delimited.pb.go
index 15d9752..d0150ed 100644
--- a/cmd/protoc-gen-go/testdata/protoeditions/maps_and_delimited.pb.go
+++ b/cmd/protoc-gen-go/testdata/protoeditions/maps_and_delimited.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type MessageWithMaps struct {
@@ -189,7 +190,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_protoeditions_maps_and_delimited_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_protoeditions_maps_and_delimited_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_protoeditions_maps_and_delimited_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   5,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/protoeditions/nested_messages.pb.go b/cmd/protoc-gen-go/testdata/protoeditions/nested_messages.pb.go
index 5f56af7..0cc38c3 100644
--- a/cmd/protoc-gen-go/testdata/protoeditions/nested_messages.pb.go
+++ b/cmd/protoc-gen-go/testdata/protoeditions/nested_messages.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Layer1 struct {
@@ -188,7 +189,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_protoeditions_nested_messages_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_protoeditions_nested_messages_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_protoeditions_nested_messages_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   3,
 			NumExtensions: 0,
diff --git a/cmd/protoc-gen-go/testdata/retention/options_message.pb.go b/cmd/protoc-gen-go/testdata/retention/options_message.pb.go
index 97667fe..8835cd9 100755
--- a/cmd/protoc-gen-go/testdata/retention/options_message.pb.go
+++ b/cmd/protoc-gen-go/testdata/retention/options_message.pb.go
@@ -13,6 +13,7 @@
 	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // Retention attributes set on fields nested within a message
@@ -166,7 +167,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_retention_options_message_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_retention_options_message_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_retention_options_message_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 4,
diff --git a/cmd/protoc-gen-go/testdata/retention/retention.pb.go b/cmd/protoc-gen-go/testdata/retention/retention.pb.go
index 6da1944..6ee08bf 100755
--- a/cmd/protoc-gen-go/testdata/retention/retention.pb.go
+++ b/cmd/protoc-gen-go/testdata/retention/retention.pb.go
@@ -13,6 +13,7 @@
 	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type TopLevelEnum int32
@@ -533,7 +534,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_cmd_protoc_gen_go_testdata_retention_retention_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_retention_retention_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_retention_retention_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   3,
 			NumExtensions: 14,
diff --git a/internal/testprotos/annotation/annotation.pb.go b/internal/testprotos/annotation/annotation.pb.go
index 5eec890..1abbf8c 100644
--- a/internal/testprotos/annotation/annotation.pb.go
+++ b/internal/testprotos/annotation/annotation.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 var file_internal_testprotos_annotation_annotation_proto_extTypes = []protoimpl.ExtensionInfo{
@@ -61,7 +62,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_annotation_annotation_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_annotation_annotation_proto_rawDesc), len(file_internal_testprotos_annotation_annotation_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   0,
 			NumExtensions: 1,
diff --git a/internal/testprotos/benchmarks/micro/micro.pb.go b/internal/testprotos/benchmarks/micro/micro.pb.go
index c84c494..58ad20f 100644
--- a/internal/testprotos/benchmarks/micro/micro.pb.go
+++ b/internal/testprotos/benchmarks/micro/micro.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type SixteenRequired struct {
@@ -215,7 +216,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_benchmarks_micro_micro_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_benchmarks_micro_micro_proto_rawDesc), len(file_internal_testprotos_benchmarks_micro_micro_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/conformance/conformance.pb.go b/internal/testprotos/conformance/conformance.pb.go
index 449e03e..fd805b7 100644
--- a/internal/testprotos/conformance/conformance.pb.go
+++ b/internal/testprotos/conformance/conformance.pb.go
@@ -15,6 +15,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type WireFormat int32
@@ -759,7 +760,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_conformance_conformance_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_conformance_conformance_proto_rawDesc), len(file_conformance_conformance_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   5,
 			NumExtensions: 0,
diff --git a/internal/testprotos/conformance/editions/test_messages_edition2023.pb.go b/internal/testprotos/conformance/editions/test_messages_edition2023.pb.go
index 3bf1f65..1439d1b 100644
--- a/internal/testprotos/conformance/editions/test_messages_edition2023.pb.go
+++ b/internal/testprotos/conformance/editions/test_messages_edition2023.pb.go
@@ -15,6 +15,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ForeignEnumEdition2023 int32
@@ -1447,7 +1448,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_conformance_test_protos_test_messages_edition2023_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_conformance_test_protos_test_messages_edition2023_proto_rawDesc), len(file_conformance_test_protos_test_messages_edition2023_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   25,
 			NumExtensions: 3,
diff --git a/internal/testprotos/conformance/editionsmigration/test_messages_proto2_editions.pb.go b/internal/testprotos/conformance/editionsmigration/test_messages_proto2_editions.pb.go
index 9580449..d53a1d8 100644
--- a/internal/testprotos/conformance/editionsmigration/test_messages_proto2_editions.pb.go
+++ b/internal/testprotos/conformance/editionsmigration/test_messages_proto2_editions.pb.go
@@ -21,6 +21,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ForeignEnumProto2 int32
@@ -2979,7 +2980,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_editions_golden_test_messages_proto2_editions_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_editions_golden_test_messages_proto2_editions_proto_rawDesc), len(file_editions_golden_test_messages_proto2_editions_proto_rawDesc)),
 			NumEnums:      4,
 			NumMessages:   40,
 			NumExtensions: 6,
diff --git a/internal/testprotos/conformance/editionsmigration/test_messages_proto3_editions.pb.go b/internal/testprotos/conformance/editionsmigration/test_messages_proto3_editions.pb.go
index e7c38c9..d3edc81 100644
--- a/internal/testprotos/conformance/editionsmigration/test_messages_proto3_editions.pb.go
+++ b/internal/testprotos/conformance/editionsmigration/test_messages_proto3_editions.pb.go
@@ -27,6 +27,7 @@
 	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -1920,7 +1921,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_editions_golden_test_messages_proto3_editions_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_editions_golden_test_messages_proto3_editions_proto_rawDesc), len(file_editions_golden_test_messages_proto3_editions_proto_rawDesc)),
 			NumEnums:      4,
 			NumMessages:   24,
 			NumExtensions: 0,
diff --git a/internal/testprotos/conformance/test_messages_proto2.pb.go b/internal/testprotos/conformance/test_messages_proto2.pb.go
index 2f98f47..85e289f 100644
--- a/internal/testprotos/conformance/test_messages_proto2.pb.go
+++ b/internal/testprotos/conformance/test_messages_proto2.pb.go
@@ -22,6 +22,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ForeignEnumProto2 int32
@@ -3020,7 +3021,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_test_messages_proto2_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_test_messages_proto2_proto_rawDesc), len(file_google_protobuf_test_messages_proto2_proto_rawDesc)),
 			NumEnums:      4,
 			NumMessages:   40,
 			NumExtensions: 6,
diff --git a/internal/testprotos/conformance/test_messages_proto3.pb.go b/internal/testprotos/conformance/test_messages_proto3.pb.go
index 380c461..63c1f15 100644
--- a/internal/testprotos/conformance/test_messages_proto3.pb.go
+++ b/internal/testprotos/conformance/test_messages_proto3.pb.go
@@ -28,6 +28,7 @@
 	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -1921,7 +1922,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_test_messages_proto3_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_test_messages_proto3_proto_rawDesc), len(file_google_protobuf_test_messages_proto3_proto_rawDesc)),
 			NumEnums:      4,
 			NumMessages:   24,
 			NumExtensions: 0,
diff --git a/internal/testprotos/editionsfuzztest/test2.pb.go b/internal/testprotos/editionsfuzztest/test2.pb.go
index efaa101..f85db56 100644
--- a/internal/testprotos/editionsfuzztest/test2.pb.go
+++ b/internal/testprotos/editionsfuzztest/test2.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type TestAllTypesProto2_NestedEnum int32
@@ -1216,7 +1217,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_editionsfuzztest_test2_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_editionsfuzztest_test2_proto_rawDesc), len(file_internal_testprotos_editionsfuzztest_test2_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   22,
 			NumExtensions: 0,
diff --git a/internal/testprotos/editionsfuzztest/test2editions.pb.go b/internal/testprotos/editionsfuzztest/test2editions.pb.go
index 116cb70..85e37e4 100644
--- a/internal/testprotos/editionsfuzztest/test2editions.pb.go
+++ b/internal/testprotos/editionsfuzztest/test2editions.pb.go
@@ -13,6 +13,7 @@
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type TestAllTypesProto2Editions_NestedEnum int32
@@ -1217,7 +1218,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDesc), len(file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   22,
 			NumExtensions: 0,
diff --git a/internal/testprotos/editionsfuzztest/test3.pb.go b/internal/testprotos/editionsfuzztest/test3.pb.go
index 3410514..eca159f 100644
--- a/internal/testprotos/editionsfuzztest/test3.pb.go
+++ b/internal/testprotos/editionsfuzztest/test3.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ForeignEnumProto3 int32
@@ -1112,7 +1113,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_editionsfuzztest_test3_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_editionsfuzztest_test3_proto_rawDesc), len(file_internal_testprotos_editionsfuzztest_test3_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   20,
 			NumExtensions: 0,
diff --git a/internal/testprotos/editionsfuzztest/test3editions.pb.go b/internal/testprotos/editionsfuzztest/test3editions.pb.go
index 4bf7811..e2b0582 100644
--- a/internal/testprotos/editionsfuzztest/test3editions.pb.go
+++ b/internal/testprotos/editionsfuzztest/test3editions.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ForeignEnumProto3Editions int32
@@ -1112,7 +1113,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_editionsfuzztest_test3editions_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_editionsfuzztest_test3editions_proto_rawDesc), len(file_internal_testprotos_editionsfuzztest_test3editions_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   20,
 			NumExtensions: 0,
diff --git a/internal/testprotos/enums/enums.pb.go b/internal/testprotos/enums/enums.pb.go
index 7f8332c..a8990ff 100644
--- a/internal/testprotos/enums/enums.pb.go
+++ b/internal/testprotos/enums/enums.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -115,7 +116,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_enums_enums_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_enums_enums_proto_rawDesc), len(file_internal_testprotos_enums_enums_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   0,
 			NumExtensions: 0,
diff --git a/internal/testprotos/enums/enums_hybrid/enums.hybrid.pb.go b/internal/testprotos/enums/enums_hybrid/enums.hybrid.pb.go
index 18ae36d..3aab7be 100644
--- a/internal/testprotos/enums/enums_hybrid/enums.hybrid.pb.go
+++ b/internal/testprotos/enums/enums_hybrid/enums.hybrid.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -100,7 +101,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_enums_enums_hybrid_enums_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_enums_enums_hybrid_enums_hybrid_proto_rawDesc), len(file_internal_testprotos_enums_enums_hybrid_enums_hybrid_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   0,
 			NumExtensions: 0,
diff --git a/internal/testprotos/enums/enums_hybrid/enums.hybrid_protoopaque.pb.go b/internal/testprotos/enums/enums_hybrid/enums.hybrid_protoopaque.pb.go
index e4f3d38..8c8478b 100644
--- a/internal/testprotos/enums/enums_hybrid/enums.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/enums/enums_hybrid/enums.hybrid_protoopaque.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -100,7 +101,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_enums_enums_hybrid_enums_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_enums_enums_hybrid_enums_hybrid_proto_rawDesc), len(file_internal_testprotos_enums_enums_hybrid_enums_hybrid_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   0,
 			NumExtensions: 0,
diff --git a/internal/testprotos/enums/enums_opaque/enums.opaque.pb.go b/internal/testprotos/enums/enums_opaque/enums.opaque.pb.go
index c1f7226..7e6c76c 100644
--- a/internal/testprotos/enums/enums_opaque/enums.opaque.pb.go
+++ b/internal/testprotos/enums/enums_opaque/enums.opaque.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -98,7 +99,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_enums_enums_opaque_enums_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_enums_enums_opaque_enums_opaque_proto_rawDesc), len(file_internal_testprotos_enums_enums_opaque_enums_opaque_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   0,
 			NumExtensions: 0,
diff --git a/internal/testprotos/examples/ext/extexample.pb.go b/internal/testprotos/examples/ext/extexample.pb.go
index 46b711b..8bb0ec1 100644
--- a/internal/testprotos/examples/ext/extexample.pb.go
+++ b/internal/testprotos/examples/ext/extexample.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Concert struct {
@@ -136,7 +137,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_examples_ext_extexample_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_examples_ext_extexample_proto_rawDesc), len(file_internal_testprotos_examples_ext_extexample_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 1,
diff --git a/internal/testprotos/fieldtrack/fieldtrack.pb.go b/internal/testprotos/fieldtrack/fieldtrack.pb.go
index ce9f3ec..7b26dd1 100644
--- a/internal/testprotos/fieldtrack/fieldtrack.pb.go
+++ b/internal/testprotos/fieldtrack/fieldtrack.pb.go
@@ -15,6 +15,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type TestFieldTrack struct {
@@ -634,7 +635,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_fieldtrack_fieldtrack_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_fieldtrack_fieldtrack_proto_rawDesc), len(file_internal_testprotos_fieldtrack_fieldtrack_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   18,
 			NumExtensions: 0,
diff --git a/internal/testprotos/fuzz/fuzz.pb.go b/internal/testprotos/fuzz/fuzz.pb.go
index 215f40e..3f0754d 100644
--- a/internal/testprotos/fuzz/fuzz.pb.go
+++ b/internal/testprotos/fuzz/fuzz.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // Fuzz is a container for every message we want to make available to the
@@ -171,7 +172,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_fuzz_fuzz_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_fuzz_fuzz_proto_rawDesc), len(file_internal_testprotos_fuzz_fuzz_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/irregular/test.pb.go b/internal/testprotos/irregular/test.pb.go
index fcdb769..a09793c 100644
--- a/internal/testprotos/irregular/test.pb.go
+++ b/internal/testprotos/irregular/test.pb.go
@@ -16,6 +16,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Message struct {
@@ -222,7 +223,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_irregular_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_irregular_test_proto_rawDesc), len(file_internal_testprotos_irregular_test_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   3,
 			NumExtensions: 0,
diff --git a/internal/testprotos/lazy/lazy_extension_normalized_wire_test.pb.go b/internal/testprotos/lazy/lazy_extension_normalized_wire_test.pb.go
index a274126..6fdf71c 100644
--- a/internal/testprotos/lazy/lazy_extension_normalized_wire_test.pb.go
+++ b/internal/testprotos/lazy/lazy_extension_normalized_wire_test.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Sub struct {
@@ -223,7 +224,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_lazy_lazy_extension_normalized_wire_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_lazy_lazy_extension_normalized_wire_test_proto_rawDesc), len(file_internal_testprotos_lazy_lazy_extension_normalized_wire_test_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   3,
 			NumExtensions: 1,
diff --git a/internal/testprotos/lazy/lazy_extension_test.pb.go b/internal/testprotos/lazy/lazy_extension_test.pb.go
index ee31b06..aedbf42 100644
--- a/internal/testprotos/lazy/lazy_extension_test.pb.go
+++ b/internal/testprotos/lazy/lazy_extension_test.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type FlyingFoxSpecies int32
@@ -629,7 +630,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_lazy_lazy_extension_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_lazy_lazy_extension_test_proto_rawDesc), len(file_internal_testprotos_lazy_lazy_extension_test_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   7,
 			NumExtensions: 9,
diff --git a/internal/testprotos/lazy/lazy_hybrid/lazy_tree.hybrid.pb.go b/internal/testprotos/lazy/lazy_hybrid/lazy_tree.hybrid.pb.go
index de231ea..e9c8de6 100644
--- a/internal/testprotos/lazy/lazy_hybrid/lazy_tree.hybrid.pb.go
+++ b/internal/testprotos/lazy/lazy_hybrid/lazy_tree.hybrid.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Node struct {
@@ -493,7 +494,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_lazy_lazy_hybrid_lazy_tree_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_lazy_lazy_hybrid_lazy_tree_hybrid_proto_rawDesc), len(file_internal_testprotos_lazy_lazy_hybrid_lazy_tree_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/lazy/lazy_hybrid/lazy_tree.hybrid_protoopaque.pb.go b/internal/testprotos/lazy/lazy_hybrid/lazy_tree.hybrid_protoopaque.pb.go
index 69326b0..77dab43 100644
--- a/internal/testprotos/lazy/lazy_hybrid/lazy_tree.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/lazy/lazy_hybrid/lazy_tree.hybrid_protoopaque.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Node struct {
@@ -586,7 +587,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_lazy_lazy_hybrid_lazy_tree_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_lazy_lazy_hybrid_lazy_tree_hybrid_proto_rawDesc), len(file_internal_testprotos_lazy_lazy_hybrid_lazy_tree_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/lazy/lazy_normalized_wire_test.pb.go b/internal/testprotos/lazy/lazy_normalized_wire_test.pb.go
index 90af03d..3139a12 100644
--- a/internal/testprotos/lazy/lazy_normalized_wire_test.pb.go
+++ b/internal/testprotos/lazy/lazy_normalized_wire_test.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type FSub struct {
@@ -166,7 +167,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_lazy_lazy_normalized_wire_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_lazy_lazy_normalized_wire_test_proto_rawDesc), len(file_internal_testprotos_lazy_lazy_normalized_wire_test_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   2,
 			NumExtensions: 0,
diff --git a/internal/testprotos/lazy/lazy_opaque/lazy_tree.opaque.pb.go b/internal/testprotos/lazy/lazy_opaque/lazy_tree.opaque.pb.go
index 57b475c..46867c3 100644
--- a/internal/testprotos/lazy/lazy_opaque/lazy_tree.opaque.pb.go
+++ b/internal/testprotos/lazy/lazy_opaque/lazy_tree.opaque.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Node struct {
@@ -584,7 +585,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_lazy_lazy_opaque_lazy_tree_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_lazy_lazy_opaque_lazy_tree_opaque_proto_rawDesc), len(file_internal_testprotos_lazy_lazy_opaque_lazy_tree_opaque_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/lazy/lazy_tree.pb.go b/internal/testprotos/lazy/lazy_tree.pb.go
index 77d1153..6807052 100644
--- a/internal/testprotos/lazy/lazy_tree.pb.go
+++ b/internal/testprotos/lazy/lazy_tree.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Node struct {
@@ -216,7 +217,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_lazy_lazy_tree_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_lazy_lazy_tree_proto_rawDesc), len(file_internal_testprotos_lazy_lazy_tree_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/legacy/legacy.pb.go b/internal/testprotos/legacy/legacy.pb.go
index c2e4d5f..ddf4d7b 100644
--- a/internal/testprotos/legacy/legacy.pb.go
+++ b/internal/testprotos/legacy/legacy.pb.go
@@ -24,6 +24,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Legacy struct {
@@ -219,7 +220,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_legacy_legacy_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_legacy_legacy_proto_rawDesc), len(file_internal_testprotos_legacy_legacy_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/messageset/messagesetpb/message_set.pb.go b/internal/testprotos/messageset/messagesetpb/message_set.pb.go
index 1aa1c8d..e9cc898 100644
--- a/internal/testprotos/messageset/messagesetpb/message_set.pb.go
+++ b/internal/testprotos/messageset/messagesetpb/message_set.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type MessageSet struct {
@@ -134,7 +135,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_messageset_messagesetpb_message_set_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_messageset_messagesetpb_message_set_proto_rawDesc), len(file_internal_testprotos_messageset_messagesetpb_message_set_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   2,
 			NumExtensions: 0,
diff --git a/internal/testprotos/messageset/messagesetpb/messagesetpb_hybrid/message_set.hybrid.pb.go b/internal/testprotos/messageset/messagesetpb/messagesetpb_hybrid/message_set.hybrid.pb.go
index 047b954..12a3a90 100644
--- a/internal/testprotos/messageset/messagesetpb/messagesetpb_hybrid/message_set.hybrid.pb.go
+++ b/internal/testprotos/messageset/messagesetpb/messagesetpb_hybrid/message_set.hybrid.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type MessageSet struct {
@@ -157,7 +158,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_messageset_messagesetpb_messagesetpb_hybrid_message_set_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_messageset_messagesetpb_messagesetpb_hybrid_message_set_hybrid_proto_rawDesc), len(file_internal_testprotos_messageset_messagesetpb_messagesetpb_hybrid_message_set_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   2,
 			NumExtensions: 0,
diff --git a/internal/testprotos/messageset/messagesetpb/messagesetpb_hybrid/message_set.hybrid_protoopaque.pb.go b/internal/testprotos/messageset/messagesetpb/messagesetpb_hybrid/message_set.hybrid_protoopaque.pb.go
index b825776..1c30b6b 100644
--- a/internal/testprotos/messageset/messagesetpb/messagesetpb_hybrid/message_set.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/messageset/messagesetpb/messagesetpb_hybrid/message_set.hybrid_protoopaque.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type MessageSet struct {
@@ -157,7 +158,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_messageset_messagesetpb_messagesetpb_hybrid_message_set_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_messageset_messagesetpb_messagesetpb_hybrid_message_set_hybrid_proto_rawDesc), len(file_internal_testprotos_messageset_messagesetpb_messagesetpb_hybrid_message_set_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   2,
 			NumExtensions: 0,
diff --git a/internal/testprotos/messageset/messagesetpb/messagesetpb_opaque/message_set.opaque.pb.go b/internal/testprotos/messageset/messagesetpb/messagesetpb_opaque/message_set.opaque.pb.go
index 1971ac3..5cafe99 100644
--- a/internal/testprotos/messageset/messagesetpb/messagesetpb_opaque/message_set.opaque.pb.go
+++ b/internal/testprotos/messageset/messagesetpb/messagesetpb_opaque/message_set.opaque.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type MessageSet struct {
@@ -155,7 +156,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_messageset_messagesetpb_messagesetpb_opaque_message_set_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_messageset_messagesetpb_messagesetpb_opaque_message_set_opaque_proto_rawDesc), len(file_internal_testprotos_messageset_messagesetpb_messagesetpb_opaque_message_set_opaque_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   2,
 			NumExtensions: 0,
diff --git a/internal/testprotos/messageset/msetextpb/msetextpb.pb.go b/internal/testprotos/messageset/msetextpb/msetextpb.pb.go
index 8497d8d..8519801 100644
--- a/internal/testprotos/messageset/msetextpb/msetextpb.pb.go
+++ b/internal/testprotos/messageset/msetextpb/msetextpb.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Ext1 struct {
@@ -287,7 +288,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_messageset_msetextpb_msetextpb_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_messageset_msetextpb_msetextpb_proto_rawDesc), len(file_internal_testprotos_messageset_msetextpb_msetextpb_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   4,
 			NumExtensions: 4,
diff --git a/internal/testprotos/messageset/msetextpb/msetextpb_hybrid/msetextpb.hybrid.pb.go b/internal/testprotos/messageset/msetextpb/msetextpb_hybrid/msetextpb.hybrid.pb.go
index 1c1d5af..f2572a1 100644
--- a/internal/testprotos/messageset/msetextpb/msetextpb_hybrid/msetextpb.hybrid.pb.go
+++ b/internal/testprotos/messageset/msetextpb/msetextpb_hybrid/msetextpb.hybrid.pb.go
@@ -15,6 +15,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Ext1 struct {
@@ -375,7 +376,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_messageset_msetextpb_msetextpb_hybrid_msetextpb_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_messageset_msetextpb_msetextpb_hybrid_msetextpb_hybrid_proto_rawDesc), len(file_internal_testprotos_messageset_msetextpb_msetextpb_hybrid_msetextpb_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   4,
 			NumExtensions: 4,
diff --git a/internal/testprotos/messageset/msetextpb/msetextpb_hybrid/msetextpb.hybrid_protoopaque.pb.go b/internal/testprotos/messageset/msetextpb/msetextpb_hybrid/msetextpb.hybrid_protoopaque.pb.go
index ab62a00..079f7bc 100644
--- a/internal/testprotos/messageset/msetextpb/msetextpb_hybrid/msetextpb.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/messageset/msetextpb/msetextpb_hybrid/msetextpb.hybrid_protoopaque.pb.go
@@ -15,6 +15,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Ext1 struct {
@@ -401,7 +402,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_messageset_msetextpb_msetextpb_hybrid_msetextpb_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_messageset_msetextpb_msetextpb_hybrid_msetextpb_hybrid_proto_rawDesc), len(file_internal_testprotos_messageset_msetextpb_msetextpb_hybrid_msetextpb_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   4,
 			NumExtensions: 4,
diff --git a/internal/testprotos/messageset/msetextpb/msetextpb_opaque/msetextpb.opaque.pb.go b/internal/testprotos/messageset/msetextpb/msetextpb_opaque/msetextpb.opaque.pb.go
index e02f347..c898e38 100644
--- a/internal/testprotos/messageset/msetextpb/msetextpb_opaque/msetextpb.opaque.pb.go
+++ b/internal/testprotos/messageset/msetextpb/msetextpb_opaque/msetextpb.opaque.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Ext1 struct {
@@ -399,7 +400,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_messageset_msetextpb_msetextpb_opaque_msetextpb_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_messageset_msetextpb_msetextpb_opaque_msetextpb_opaque_proto_rawDesc), len(file_internal_testprotos_messageset_msetextpb_msetextpb_opaque_msetextpb_opaque_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   4,
 			NumExtensions: 4,
diff --git a/internal/testprotos/mixed/mixed.pb.go b/internal/testprotos/mixed/mixed.pb.go
index 91a3ac8..9036432 100644
--- a/internal/testprotos/mixed/mixed.pb.go
+++ b/internal/testprotos/mixed/mixed.pb.go
@@ -17,6 +17,7 @@
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Open struct {
@@ -859,7 +860,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_mixed_mixed_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_mixed_mixed_proto_rawDesc), len(file_internal_testprotos_mixed_mixed_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   6,
 			NumExtensions: 0,
diff --git a/internal/testprotos/news/news.pb.go b/internal/testprotos/news/news.pb.go
index 721f123..e08d9c8 100644
--- a/internal/testprotos/news/news.pb.go
+++ b/internal/testprotos/news/news.pb.go
@@ -14,6 +14,7 @@
 	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Article_Status int32
@@ -309,7 +310,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_news_news_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_news_news_proto_rawDesc), len(file_internal_testprotos_news_news_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   4,
 			NumExtensions: 0,
diff --git a/internal/testprotos/order/order.pb.go b/internal/testprotos/order/order.pb.go
index fd93884..c3038f9 100644
--- a/internal/testprotos/order/order.pb.go
+++ b/internal/testprotos/order/order.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Message struct {
@@ -187,7 +188,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_order_order_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_order_order_proto_rawDesc), len(file_internal_testprotos_order_order_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 3,
diff --git a/internal/testprotos/race/extender/test.pb.go b/internal/testprotos/race/extender/test.pb.go
index f1bbdb7..68fff5a 100644
--- a/internal/testprotos/race/extender/test.pb.go
+++ b/internal/testprotos/race/extender/test.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type OtherMessage struct {
@@ -115,7 +116,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_race_extender_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_race_extender_test_proto_rawDesc), len(file_internal_testprotos_race_extender_test_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 1,
diff --git a/internal/testprotos/race/message/test.pb.go b/internal/testprotos/race/message/test.pb.go
index 973d145..f484b2a 100644
--- a/internal/testprotos/race/message/test.pb.go
+++ b/internal/testprotos/race/message/test.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type MyMessage struct {
@@ -96,7 +97,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_race_message_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_race_message_test_proto_rawDesc), len(file_internal_testprotos_race_message_test_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/registry/test.pb.go b/internal/testprotos/registry/test.pb.go
index d2f1d1c..54f5a85 100644
--- a/internal/testprotos/registry/test.pb.go
+++ b/internal/testprotos/registry/test.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Enum1 int32
@@ -449,7 +450,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_registry_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_registry_test_proto_rawDesc), len(file_internal_testprotos_registry_test_proto_rawDesc)),
 			NumEnums:      3,
 			NumMessages:   4,
 			NumExtensions: 6,
diff --git a/internal/testprotos/required/required.pb.go b/internal/testprotos/required/required.pb.go
index df467be..92b5e93 100644
--- a/internal/testprotos/required/required.pb.go
+++ b/internal/testprotos/required/required.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Int32 struct {
@@ -809,7 +810,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_required_required_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_required_required_proto_rawDesc), len(file_internal_testprotos_required_required_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   17,
 			NumExtensions: 0,
diff --git a/internal/testprotos/required/required_hybrid/required.hybrid.pb.go b/internal/testprotos/required/required_hybrid/required.hybrid.pb.go
index a9fc667..f297b56 100644
--- a/internal/testprotos/required/required_hybrid/required.hybrid.pb.go
+++ b/internal/testprotos/required/required_hybrid/required.hybrid.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Int32 struct {
@@ -1193,7 +1194,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_required_required_hybrid_required_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_required_required_hybrid_required_hybrid_proto_rawDesc), len(file_internal_testprotos_required_required_hybrid_required_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   17,
 			NumExtensions: 0,
diff --git a/internal/testprotos/required/required_hybrid/required.hybrid_protoopaque.pb.go b/internal/testprotos/required/required_hybrid/required.hybrid_protoopaque.pb.go
index 0456207..99020e8 100644
--- a/internal/testprotos/required/required_hybrid/required.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/required/required_hybrid/required.hybrid_protoopaque.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Int32 struct {
@@ -1294,7 +1295,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_required_required_hybrid_required_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_required_required_hybrid_required_hybrid_proto_rawDesc), len(file_internal_testprotos_required_required_hybrid_required_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   17,
 			NumExtensions: 0,
diff --git a/internal/testprotos/required/required_opaque/required.opaque.pb.go b/internal/testprotos/required/required_opaque/required.opaque.pb.go
index b922821..ffdec72 100644
--- a/internal/testprotos/required/required_opaque/required.opaque.pb.go
+++ b/internal/testprotos/required/required_opaque/required.opaque.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Int32 struct {
@@ -1292,7 +1293,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_required_required_opaque_required_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_required_required_opaque_required_opaque_proto_rawDesc), len(file_internal_testprotos_required_required_opaque_required_opaque_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   17,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test/ext.pb.go b/internal/testprotos/test/ext.pb.go
index 9ca924d..6d3ca9c 100644
--- a/internal/testprotos/test/ext.pb.go
+++ b/internal/testprotos/test/ext.pb.go
@@ -11,6 +11,7 @@
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 var file_internal_testprotos_test_ext_proto_extTypes = []protoimpl.ExtensionInfo{
@@ -56,7 +57,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test_ext_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test_ext_proto_rawDesc), len(file_internal_testprotos_test_ext_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   0,
 			NumExtensions: 1,
diff --git a/internal/testprotos/test/test.pb.go b/internal/testprotos/test/test.pb.go
index 50b72d8..2c8104e 100644
--- a/internal/testprotos/test/test.pb.go
+++ b/internal/testprotos/test/test.pb.go
@@ -15,6 +15,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -4893,7 +4894,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test_test_proto_rawDesc), len(file_internal_testprotos_test_test_proto_rawDesc)),
 			NumEnums:      4,
 			NumMessages:   48,
 			NumExtensions: 82,
diff --git a/internal/testprotos/test/test_import.pb.go b/internal/testprotos/test/test_import.pb.go
index c234d1d..d42e29a 100644
--- a/internal/testprotos/test/test_import.pb.go
+++ b/internal/testprotos/test/test_import.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ImportEnum int32
@@ -142,7 +143,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test_test_import_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test_test_import_proto_rawDesc), len(file_internal_testprotos_test_test_import_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test/test_public.pb.go b/internal/testprotos/test/test_public.pb.go
index 41471e3..de6fa77 100644
--- a/internal/testprotos/test/test_public.pb.go
+++ b/internal/testprotos/test/test_public.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type PublicImportMessage struct {
@@ -87,7 +88,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test_test_public_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test_test_public_proto_rawDesc), len(file_internal_testprotos_test_test_public_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test/weak1/test_weak.pb.go b/internal/testprotos/test/weak1/test_weak.pb.go
index b54aaa0..dc84e57 100644
--- a/internal/testprotos/test/weak1/test_weak.pb.go
+++ b/internal/testprotos/test/weak1/test_weak.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type WeakImportMessage1 struct {
@@ -95,7 +96,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test_weak1_test_weak_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test_weak1_test_weak_proto_rawDesc), len(file_internal_testprotos_test_weak1_test_weak_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test/weak2/test_weak.pb.go b/internal/testprotos/test/weak2/test_weak.pb.go
index eb80543..05b4835 100644
--- a/internal/testprotos/test/weak2/test_weak.pb.go
+++ b/internal/testprotos/test/weak2/test_weak.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type WeakImportMessage2 struct {
@@ -95,7 +96,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test_weak2_test_weak_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test_weak2_test_weak_proto_rawDesc), len(file_internal_testprotos_test_weak2_test_weak_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test3/test.pb.go b/internal/testprotos/test3/test.pb.go
index 9b701d3..6ef4c05 100644
--- a/internal/testprotos/test3/test.pb.go
+++ b/internal/testprotos/test3/test.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -1169,7 +1170,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test3_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test3_test_proto_rawDesc), len(file_internal_testprotos_test3_test_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   20,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test3/test3_hybrid/test.hybrid.pb.go b/internal/testprotos/test3/test3_hybrid/test.hybrid.pb.go
index 1810f32..9661e1d 100644
--- a/internal/testprotos/test3/test3_hybrid/test.hybrid.pb.go
+++ b/internal/testprotos/test3/test3_hybrid/test.hybrid.pb.go
@@ -13,6 +13,7 @@
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -2221,7 +2222,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test3_test3_hybrid_test_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test3_test3_hybrid_test_hybrid_proto_rawDesc), len(file_internal_testprotos_test3_test3_hybrid_test_hybrid_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   20,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test3/test3_hybrid/test.hybrid_protoopaque.pb.go b/internal/testprotos/test3/test3_hybrid/test.hybrid_protoopaque.pb.go
index 0d67d6d..7165ad3 100644
--- a/internal/testprotos/test3/test3_hybrid/test.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/test3/test3_hybrid/test.hybrid_protoopaque.pb.go
@@ -13,6 +13,7 @@
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -2310,7 +2311,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test3_test3_hybrid_test_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test3_test3_hybrid_test_hybrid_proto_rawDesc), len(file_internal_testprotos_test3_test3_hybrid_test_hybrid_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   20,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test3/test3_hybrid/test_import.hybrid.pb.go b/internal/testprotos/test3/test3_hybrid/test_import.hybrid.pb.go
index 674e58d..ccce83d 100644
--- a/internal/testprotos/test3/test3_hybrid/test_import.hybrid.pb.go
+++ b/internal/testprotos/test3/test3_hybrid/test_import.hybrid.pb.go
@@ -13,6 +13,7 @@
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ImportEnum int32
@@ -123,7 +124,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test3_test3_hybrid_test_import_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test3_test3_hybrid_test_import_hybrid_proto_rawDesc), len(file_internal_testprotos_test3_test3_hybrid_test_import_hybrid_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test3/test3_hybrid/test_import.hybrid_protoopaque.pb.go b/internal/testprotos/test3/test3_hybrid/test_import.hybrid_protoopaque.pb.go
index 61d30f5..bda4c42 100644
--- a/internal/testprotos/test3/test3_hybrid/test_import.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/test3/test3_hybrid/test_import.hybrid_protoopaque.pb.go
@@ -13,6 +13,7 @@
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ImportEnum int32
@@ -123,7 +124,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test3_test3_hybrid_test_import_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test3_test3_hybrid_test_import_hybrid_proto_rawDesc), len(file_internal_testprotos_test3_test3_hybrid_test_import_hybrid_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test3/test3_opaque/test.opaque.pb.go b/internal/testprotos/test3/test3_opaque/test.opaque.pb.go
index b90ebfe..d4ccc32 100644
--- a/internal/testprotos/test3/test3_opaque/test.opaque.pb.go
+++ b/internal/testprotos/test3/test3_opaque/test.opaque.pb.go
@@ -11,6 +11,7 @@
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -2308,7 +2309,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test3_test3_opaque_test_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test3_test3_opaque_test_opaque_proto_rawDesc), len(file_internal_testprotos_test3_test3_opaque_test_opaque_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   20,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test3/test3_opaque/test_import.opaque.pb.go b/internal/testprotos/test3/test3_opaque/test_import.opaque.pb.go
index bebcc64..24d13c0 100644
--- a/internal/testprotos/test3/test3_opaque/test_import.opaque.pb.go
+++ b/internal/testprotos/test3/test3_opaque/test_import.opaque.pb.go
@@ -11,6 +11,7 @@
 	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ImportEnum int32
@@ -121,7 +122,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test3_test3_opaque_test_import_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test3_test3_opaque_test_import_opaque_proto_rawDesc), len(file_internal_testprotos_test3_test3_opaque_test_import_opaque_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/test3/test_extension.pb.go b/internal/testprotos/test3/test_extension.pb.go
index 5b13681..4c822f3 100644
--- a/internal/testprotos/test3/test_extension.pb.go
+++ b/internal/testprotos/test3/test_extension.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 var file_internal_testprotos_test3_test_extension_proto_extTypes = []protoimpl.ExtensionInfo{
@@ -615,7 +616,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test3_test_extension_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test3_test_extension_proto_rawDesc), len(file_internal_testprotos_test3_test_extension_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   0,
 			NumExtensions: 51,
diff --git a/internal/testprotos/test3/test_import.pb.go b/internal/testprotos/test3/test_import.pb.go
index 3506bc3..2504928 100644
--- a/internal/testprotos/test3/test_import.pb.go
+++ b/internal/testprotos/test3/test_import.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ImportEnum int32
@@ -132,7 +133,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_test3_test_import_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_test3_test_import_proto_rawDesc), len(file_internal_testprotos_test3_test_import_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/testeditions/test.pb.go b/internal/testprotos/testeditions/test.pb.go
index e8d7696..3b2dcb9 100644
--- a/internal/testprotos/testeditions/test.pb.go
+++ b/internal/testprotos/testeditions/test.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -3308,7 +3309,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_test_proto_rawDesc), len(file_internal_testprotos_testeditions_test_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   34,
 			NumExtensions: 14,
diff --git a/internal/testprotos/testeditions/test_extension.pb.go b/internal/testprotos/testeditions/test_extension.pb.go
index 5f9dab4..63513ac 100644
--- a/internal/testprotos/testeditions/test_extension.pb.go
+++ b/internal/testprotos/testeditions/test_extension.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type TestAllExtensions struct {
@@ -982,7 +983,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_test_extension_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_test_extension_proto_rawDesc), len(file_internal_testprotos_testeditions_test_extension_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   6,
 			NumExtensions: 57,
diff --git a/internal/testprotos/testeditions/test_extension2.pb.go b/internal/testprotos/testeditions/test_extension2.pb.go
index d12d581..975a01b 100644
--- a/internal/testprotos/testeditions/test_extension2.pb.go
+++ b/internal/testprotos/testeditions/test_extension2.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type OtherRepeatedFieldEncoding struct {
@@ -140,7 +141,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_test_extension2_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_test_extension2_proto_rawDesc), len(file_internal_testprotos_testeditions_test_extension2_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 4,
diff --git a/internal/testprotos/testeditions/test_import.pb.go b/internal/testprotos/testeditions/test_import.pb.go
index 6669bc2..664e847 100644
--- a/internal/testprotos/testeditions/test_import.pb.go
+++ b/internal/testprotos/testeditions/test_import.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type ImportEnum int32
@@ -132,7 +133,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_test_import_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_test_import_proto_rawDesc), len(file_internal_testprotos_testeditions_test_import_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/testeditions/testeditions_hybrid/test.hybrid.pb.go b/internal/testprotos/testeditions/testeditions_hybrid/test.hybrid.pb.go
index b48bbd2..2687261 100644
--- a/internal/testprotos/testeditions/testeditions_hybrid/test.hybrid.pb.go
+++ b/internal/testprotos/testeditions/testeditions_hybrid/test.hybrid.pb.go
@@ -15,6 +15,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -7099,7 +7100,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_hybrid_test_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_hybrid_test_hybrid_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_hybrid_test_hybrid_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   34,
 			NumExtensions: 14,
diff --git a/internal/testprotos/testeditions/testeditions_hybrid/test.hybrid_protoopaque.pb.go b/internal/testprotos/testeditions/testeditions_hybrid/test.hybrid_protoopaque.pb.go
index ce1226b..4c4970f 100644
--- a/internal/testprotos/testeditions/testeditions_hybrid/test.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/testeditions/testeditions_hybrid/test.hybrid_protoopaque.pb.go
@@ -15,6 +15,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -7434,7 +7435,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_hybrid_test_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_hybrid_test_hybrid_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_hybrid_test_hybrid_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   34,
 			NumExtensions: 14,
diff --git a/internal/testprotos/testeditions/testeditions_hybrid/test_extension.hybrid.pb.go b/internal/testprotos/testeditions/testeditions_hybrid/test_extension.hybrid.pb.go
index 3810a1e..56dcdfb 100644
--- a/internal/testprotos/testeditions/testeditions_hybrid/test_extension.hybrid.pb.go
+++ b/internal/testprotos/testeditions/testeditions_hybrid/test_extension.hybrid.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type TestAllExtensions struct {
@@ -1135,7 +1136,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension_hybrid_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   6,
 			NumExtensions: 57,
diff --git a/internal/testprotos/testeditions/testeditions_hybrid/test_extension.hybrid_protoopaque.pb.go b/internal/testprotos/testeditions/testeditions_hybrid/test_extension.hybrid_protoopaque.pb.go
index 203f6c5..0aaa3a2 100644
--- a/internal/testprotos/testeditions/testeditions_hybrid/test_extension.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/testeditions/testeditions_hybrid/test_extension.hybrid_protoopaque.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type TestAllExtensions struct {
@@ -1161,7 +1162,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension_hybrid_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   6,
 			NumExtensions: 57,
diff --git a/internal/testprotos/testeditions/testeditions_hybrid/test_extension2.hybrid.pb.go b/internal/testprotos/testeditions/testeditions_hybrid/test_extension2.hybrid.pb.go
index 23011db..47880bf 100644
--- a/internal/testprotos/testeditions/testeditions_hybrid/test_extension2.hybrid.pb.go
+++ b/internal/testprotos/testeditions/testeditions_hybrid/test_extension2.hybrid.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type OtherRepeatedFieldEncoding struct {
@@ -139,7 +140,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension2_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension2_hybrid_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension2_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 4,
diff --git a/internal/testprotos/testeditions/testeditions_hybrid/test_extension2.hybrid_protoopaque.pb.go b/internal/testprotos/testeditions/testeditions_hybrid/test_extension2.hybrid_protoopaque.pb.go
index e1e436a..503eed6 100644
--- a/internal/testprotos/testeditions/testeditions_hybrid/test_extension2.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/testeditions/testeditions_hybrid/test_extension2.hybrid_protoopaque.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type OtherRepeatedFieldEncoding struct {
@@ -139,7 +140,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension2_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension2_hybrid_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_hybrid_test_extension2_hybrid_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 4,
diff --git a/internal/testprotos/testeditions/testeditions_hybrid/test_import.hybrid.pb.go b/internal/testprotos/testeditions/testeditions_hybrid/test_import.hybrid.pb.go
index 0517b31..558531d 100644
--- a/internal/testprotos/testeditions/testeditions_hybrid/test_import.hybrid.pb.go
+++ b/internal/testprotos/testeditions/testeditions_hybrid/test_import.hybrid.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ImportEnum int32
@@ -126,7 +127,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_hybrid_test_import_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_hybrid_test_import_hybrid_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_hybrid_test_import_hybrid_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/testeditions/testeditions_hybrid/test_import.hybrid_protoopaque.pb.go b/internal/testprotos/testeditions/testeditions_hybrid/test_import.hybrid_protoopaque.pb.go
index 1cc35bd..1b7cb70 100644
--- a/internal/testprotos/testeditions/testeditions_hybrid/test_import.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/testeditions/testeditions_hybrid/test_import.hybrid_protoopaque.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ImportEnum int32
@@ -126,7 +127,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_hybrid_test_import_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_hybrid_test_import_hybrid_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_hybrid_test_import_hybrid_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/testeditions/testeditions_opaque/test.opaque.pb.go b/internal/testprotos/testeditions/testeditions_opaque/test.opaque.pb.go
index 6f8552e..94c73aa 100644
--- a/internal/testprotos/testeditions/testeditions_opaque/test.opaque.pb.go
+++ b/internal/testprotos/testeditions/testeditions_opaque/test.opaque.pb.go
@@ -13,6 +13,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ForeignEnum int32
@@ -7432,7 +7433,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_opaque_test_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_opaque_test_opaque_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_opaque_test_opaque_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   34,
 			NumExtensions: 14,
diff --git a/internal/testprotos/testeditions/testeditions_opaque/test_extension.opaque.pb.go b/internal/testprotos/testeditions/testeditions_opaque/test_extension.opaque.pb.go
index b9cf8e3..7192b8a 100644
--- a/internal/testprotos/testeditions/testeditions_opaque/test_extension.opaque.pb.go
+++ b/internal/testprotos/testeditions/testeditions_opaque/test_extension.opaque.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type TestAllExtensions struct {
@@ -1159,7 +1160,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_opaque_test_extension_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_opaque_test_extension_opaque_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_opaque_test_extension_opaque_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   6,
 			NumExtensions: 57,
diff --git a/internal/testprotos/testeditions/testeditions_opaque/test_extension2.opaque.pb.go b/internal/testprotos/testeditions/testeditions_opaque/test_extension2.opaque.pb.go
index de2fd40..5eebffa 100644
--- a/internal/testprotos/testeditions/testeditions_opaque/test_extension2.opaque.pb.go
+++ b/internal/testprotos/testeditions/testeditions_opaque/test_extension2.opaque.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type OtherRepeatedFieldEncoding struct {
@@ -137,7 +138,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_opaque_test_extension2_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_opaque_test_extension2_opaque_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_opaque_test_extension2_opaque_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 4,
diff --git a/internal/testprotos/testeditions/testeditions_opaque/test_import.opaque.pb.go b/internal/testprotos/testeditions/testeditions_opaque/test_import.opaque.pb.go
index 09f0f6a..71a446b 100644
--- a/internal/testprotos/testeditions/testeditions_opaque/test_import.opaque.pb.go
+++ b/internal/testprotos/testeditions/testeditions_opaque/test_import.opaque.pb.go
@@ -12,6 +12,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	_ "google.golang.org/protobuf/types/gofeaturespb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type ImportEnum int32
@@ -124,7 +125,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_testeditions_testeditions_opaque_test_import_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_testeditions_testeditions_opaque_test_import_opaque_proto_rawDesc), len(file_internal_testprotos_testeditions_testeditions_opaque_test_import_opaque_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/internal/testprotos/textpb2/test.pb.go b/internal/testprotos/textpb2/test.pb.go
index a281993..681b8be 100644
--- a/internal/testprotos/textpb2/test.pb.go
+++ b/internal/testprotos/textpb2/test.pb.go
@@ -21,6 +21,7 @@
 	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -1940,7 +1941,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_textpb2_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_textpb2_test_proto_rawDesc), len(file_internal_testprotos_textpb2_test_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   24,
 			NumExtensions: 21,
diff --git a/internal/testprotos/textpb3/test.pb.go b/internal/testprotos/textpb3/test.pb.go
index 1079511..ae3cd8f 100644
--- a/internal/testprotos/textpb3/test.pb.go
+++ b/internal/testprotos/textpb3/test.pb.go
@@ -14,6 +14,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -1160,7 +1161,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_textpb3_test_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_textpb3_test_proto_rawDesc), len(file_internal_testprotos_textpb3_test_proto_rawDesc)),
 			NumEnums:      3,
 			NumMessages:   16,
 			NumExtensions: 0,
diff --git a/internal/testprotos/textpbeditions/test2.pb.go b/internal/testprotos/textpbeditions/test2.pb.go
index c7068b3..209db33 100644
--- a/internal/testprotos/textpbeditions/test2.pb.go
+++ b/internal/testprotos/textpbeditions/test2.pb.go
@@ -21,6 +21,7 @@
 	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -2265,7 +2266,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_textpbeditions_test2_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_textpbeditions_test2_proto_rawDesc), len(file_internal_testprotos_textpbeditions_test2_proto_rawDesc)),
 			NumEnums:      4,
 			NumMessages:   26,
 			NumExtensions: 21,
diff --git a/internal/testprotos/textpbeditions/textpbeditions_hybrid/test2.hybrid.pb.go b/internal/testprotos/textpbeditions/textpbeditions_hybrid/test2.hybrid.pb.go
index 9d3937a..80a54ad 100644
--- a/internal/testprotos/textpbeditions/textpbeditions_hybrid/test2.hybrid.pb.go
+++ b/internal/testprotos/textpbeditions/textpbeditions_hybrid/test2.hybrid.pb.go
@@ -23,6 +23,7 @@
 	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
 	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -3719,7 +3720,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_textpbeditions_textpbeditions_hybrid_test2_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_textpbeditions_textpbeditions_hybrid_test2_hybrid_proto_rawDesc), len(file_internal_testprotos_textpbeditions_textpbeditions_hybrid_test2_hybrid_proto_rawDesc)),
 			NumEnums:      4,
 			NumMessages:   26,
 			NumExtensions: 21,
diff --git a/internal/testprotos/textpbeditions/textpbeditions_hybrid/test2.hybrid_protoopaque.pb.go b/internal/testprotos/textpbeditions/textpbeditions_hybrid/test2.hybrid_protoopaque.pb.go
index a410962..21b4b1a 100644
--- a/internal/testprotos/textpbeditions/textpbeditions_hybrid/test2.hybrid_protoopaque.pb.go
+++ b/internal/testprotos/textpbeditions/textpbeditions_hybrid/test2.hybrid_protoopaque.pb.go
@@ -23,6 +23,7 @@
 	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
 	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -3947,7 +3948,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_textpbeditions_textpbeditions_hybrid_test2_hybrid_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_textpbeditions_textpbeditions_hybrid_test2_hybrid_proto_rawDesc), len(file_internal_testprotos_textpbeditions_textpbeditions_hybrid_test2_hybrid_proto_rawDesc)),
 			NumEnums:      4,
 			NumMessages:   26,
 			NumExtensions: 21,
diff --git a/internal/testprotos/textpbeditions/textpbeditions_opaque/test2.opaque.pb.go b/internal/testprotos/textpbeditions/textpbeditions_opaque/test2.opaque.pb.go
index 6c08a5d..67f0fd0 100644
--- a/internal/testprotos/textpbeditions/textpbeditions_opaque/test2.opaque.pb.go
+++ b/internal/testprotos/textpbeditions/textpbeditions_opaque/test2.opaque.pb.go
@@ -21,6 +21,7 @@
 	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
 	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
 	reflect "reflect"
+	unsafe "unsafe"
 )
 
 type Enum int32
@@ -3945,7 +3946,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_internal_testprotos_textpbeditions_textpbeditions_opaque_test2_opaque_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_textpbeditions_textpbeditions_opaque_test2_opaque_proto_rawDesc), len(file_internal_testprotos_textpbeditions_textpbeditions_opaque_test2_opaque_proto_rawDesc)),
 			NumEnums:      4,
 			NumMessages:   26,
 			NumExtensions: 21,
diff --git a/types/descriptorpb/descriptor.pb.go b/types/descriptorpb/descriptor.pb.go
index 5734ed4..003b471 100644
--- a/types/descriptorpb/descriptor.pb.go
+++ b/types/descriptorpb/descriptor.pb.go
@@ -46,6 +46,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // The full set of known editions.
@@ -4522,7 +4523,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_descriptor_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_descriptor_proto_rawDesc), len(file_google_protobuf_descriptor_proto_rawDesc)),
 			NumEnums:      17,
 			NumMessages:   33,
 			NumExtensions: 0,
diff --git a/types/gofeaturespb/go_features.pb.go b/types/gofeaturespb/go_features.pb.go
index 218199d..151a3f9 100644
--- a/types/gofeaturespb/go_features.pb.go
+++ b/types/gofeaturespb/go_features.pb.go
@@ -16,6 +16,7 @@
 	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 type GoFeatures_APILevel int32
@@ -270,7 +271,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_go_features_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_go_features_proto_rawDesc), len(file_google_protobuf_go_features_proto_rawDesc)),
 			NumEnums:      2,
 			NumMessages:   1,
 			NumExtensions: 1,
diff --git a/types/known/anypb/any.pb.go b/types/known/anypb/any.pb.go
index 4f6b06b..fe7c253 100644
--- a/types/known/anypb/any.pb.go
+++ b/types/known/anypb/any.pb.go
@@ -122,6 +122,7 @@
 	reflect "reflect"
 	strings "strings"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // `Any` contains an arbitrary serialized protocol buffer message along with a
@@ -446,7 +447,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_any_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_any_proto_rawDesc), len(file_google_protobuf_any_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/types/known/apipb/api.pb.go b/types/known/apipb/api.pb.go
index 351ac56..2f84b22 100644
--- a/types/known/apipb/api.pb.go
+++ b/types/known/apipb/api.pb.go
@@ -40,6 +40,7 @@
 	typepb "google.golang.org/protobuf/types/known/typepb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // Api is a light-weight descriptor for an API Interface.
@@ -452,7 +453,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_api_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_api_proto_rawDesc), len(file_google_protobuf_api_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   3,
 			NumExtensions: 0,
diff --git a/types/known/durationpb/duration.pb.go b/types/known/durationpb/duration.pb.go
index a429b91..b8af126 100644
--- a/types/known/durationpb/duration.pb.go
+++ b/types/known/durationpb/duration.pb.go
@@ -80,6 +80,7 @@
 	reflect "reflect"
 	sync "sync"
 	time "time"
+	unsafe "unsafe"
 )
 
 // A Duration represents a signed, fixed-length span of time represented
@@ -323,7 +324,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_duration_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_duration_proto_rawDesc), len(file_google_protobuf_duration_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/types/known/emptypb/empty.pb.go b/types/known/emptypb/empty.pb.go
index a04fdd6..f150d8b 100644
--- a/types/known/emptypb/empty.pb.go
+++ b/types/known/emptypb/empty.pb.go
@@ -38,6 +38,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // A generic empty message that you can re-use to avoid defining duplicated
@@ -120,7 +121,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_empty_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_empty_proto_rawDesc), len(file_google_protobuf_empty_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/types/known/fieldmaskpb/field_mask.pb.go b/types/known/fieldmaskpb/field_mask.pb.go
index 3b79d89..2b8e9ee 100644
--- a/types/known/fieldmaskpb/field_mask.pb.go
+++ b/types/known/fieldmaskpb/field_mask.pb.go
@@ -83,6 +83,7 @@
 	sort "sort"
 	strings "strings"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // `FieldMask` represents a set of symbolic field paths, for example:
@@ -538,7 +539,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_field_mask_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_field_mask_proto_rawDesc), len(file_google_protobuf_field_mask_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/types/known/sourcecontextpb/source_context.pb.go b/types/known/sourcecontextpb/source_context.pb.go
index 60d3ede..5017aa1 100644
--- a/types/known/sourcecontextpb/source_context.pb.go
+++ b/types/known/sourcecontextpb/source_context.pb.go
@@ -38,6 +38,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // `SourceContext` represents information about the source of a
@@ -125,7 +126,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_source_context_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_source_context_proto_rawDesc), len(file_google_protobuf_source_context_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/types/known/structpb/struct.pb.go b/types/known/structpb/struct.pb.go
index 1b98a92..ba8af89 100644
--- a/types/known/structpb/struct.pb.go
+++ b/types/known/structpb/struct.pb.go
@@ -128,6 +128,7 @@
 	reflect "reflect"
 	sync "sync"
 	utf8 "unicode/utf8"
+	unsafe "unsafe"
 )
 
 // `NullValue` is a singleton enumeration to represent the null value for the
@@ -725,7 +726,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_struct_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_struct_proto_rawDesc), len(file_google_protobuf_struct_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   4,
 			NumExtensions: 0,
diff --git a/types/known/timestamppb/timestamp.pb.go b/types/known/timestamppb/timestamp.pb.go
index 8c11695..548106c 100644
--- a/types/known/timestamppb/timestamp.pb.go
+++ b/types/known/timestamppb/timestamp.pb.go
@@ -78,6 +78,7 @@
 	reflect "reflect"
 	sync "sync"
 	time "time"
+	unsafe "unsafe"
 )
 
 // A Timestamp represents a point in time independent of any time zone or local
@@ -332,7 +333,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_timestamp_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_timestamp_proto_rawDesc), len(file_google_protobuf_timestamp_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   1,
 			NumExtensions: 0,
diff --git a/types/known/typepb/type.pb.go b/types/known/typepb/type.pb.go
index a488cc2..e9c74e2 100644
--- a/types/known/typepb/type.pb.go
+++ b/types/known/typepb/type.pb.go
@@ -40,6 +40,7 @@
 	sourcecontextpb "google.golang.org/protobuf/types/known/sourcecontextpb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // The syntax in which a protocol buffer element is defined.
@@ -775,7 +776,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_type_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_type_proto_rawDesc), len(file_google_protobuf_type_proto_rawDesc)),
 			NumEnums:      3,
 			NumMessages:   5,
 			NumExtensions: 0,
diff --git a/types/known/wrapperspb/wrappers.pb.go b/types/known/wrapperspb/wrappers.pb.go
index 8ca54b2..ea9e9f8 100644
--- a/types/known/wrapperspb/wrappers.pb.go
+++ b/types/known/wrapperspb/wrappers.pb.go
@@ -48,6 +48,7 @@
 	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // Wrapper message for `double`.
@@ -572,7 +573,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_wrappers_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_wrappers_proto_rawDesc), len(file_google_protobuf_wrappers_proto_rawDesc)),
 			NumEnums:      0,
 			NumMessages:   9,
 			NumExtensions: 0,
diff --git a/types/pluginpb/plugin.pb.go b/types/pluginpb/plugin.pb.go
index f518720..faafa96 100644
--- a/types/pluginpb/plugin.pb.go
+++ b/types/pluginpb/plugin.pb.go
@@ -29,6 +29,7 @@
 	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
 	reflect "reflect"
 	sync "sync"
+	unsafe "unsafe"
 )
 
 // Sync with code_generator.h.
@@ -535,7 +536,7 @@
 	out := protoimpl.TypeBuilder{
 		File: protoimpl.DescBuilder{
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: []byte(file_google_protobuf_compiler_plugin_proto_rawDesc),
+			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_protobuf_compiler_plugin_proto_rawDesc), len(file_google_protobuf_compiler_plugin_proto_rawDesc)),
 			NumEnums:      1,
 			NumMessages:   4,
 			NumExtensions: 0,