Avoid depset union operators

Depset operators `+`, `+=`, `|` and the depset.union() method are deprecated. They were error-prone and led to build performance problems.
Instead, creating a new depset should be done with the depset constructor.

Also, the 'items' argument of depset is deprecated.

PiperOrigin-RevId: 282628656
diff --git a/internal/common/compilation.bzl b/internal/common/compilation.bzl
index 6d1aa9f..e815f37 100644
--- a/internal/common/compilation.bzl
+++ b/internal/common/compilation.bzl
@@ -302,7 +302,7 @@
     input_declarations = depset(src_declarations, transitive = [dep_declarations.transitive])
     type_blacklisted_declarations = dep_declarations.type_blacklisted
     if not is_library and not _should_generate_externs(ctx):
-        type_blacklisted_declarations += srcs_files
+        type_blacklisted_declarations = depset(srcs_files, transitive = [type_blacklisted_declarations])
 
     # The depsets of output files. These are the files that are always built
     # (including e.g. if you "blaze build :the_target" directly).