@@ -1044,7 +1044,7 @@ def generate_target(self, target: T.Union[build.Target]) -> None:
10441044 is_unity = self .is_unity (target )
10451045 header_deps = []
10461046 unity_src : list [File ] = []
1047- unity_deps = [] # Generated sources that must be built before compiling a Unity target.
1047+ unity_deps : list [ File ] = [] # Generated sources that must be built before compiling a Unity target.
10481048 header_deps += self .get_generated_headers (target )
10491049
10501050 if is_unity :
@@ -1146,7 +1146,7 @@ def generate_target(self, target: T.Union[build.Target]) -> None:
11461146 else :
11471147 transpiled_source_files .append (raw_src )
11481148 for src in transpiled_source_files :
1149- o , s = self .generate_single_compile (target , src , True , [], header_deps )
1149+ o , s = self .generate_single_compile (target , src , True , full_deps = header_deps )
11501150 obj_list .append (o )
11511151
11521152 # Generate compile targets for all the preexisting sources for this target
@@ -1170,8 +1170,9 @@ def generate_target(self, target: T.Union[build.Target]) -> None:
11701170
11711171 if is_unity :
11721172 for src in self .generate_unity_files (target , unity_src ):
1173- o , s = self .generate_single_compile (target , src , True , [* unity_deps , * header_deps , * d_generated_deps ],
1174- fortran_order_deps , fortran_inc_args , unity_src )
1173+ o , s = self .generate_single_compile (target , src , True , unity_deps ,
1174+ [* header_deps , * d_generated_deps , * fortran_order_deps ],
1175+ fortran_inc_args , unity_src )
11751176 obj_list .append (o )
11761177 compiled_sources .append (s )
11771178 source2object [s ] = o
@@ -3242,7 +3243,7 @@ def order_deps_to_strings(self, target: build.BuildTarget, order_deps: T.List[Fi
32423243
32433244 def generate_single_compile (self , target : build .BuildTarget , src : FileOrString ,
32443245 is_generated : bool = False ,
3245- full_deps : T . Optional [ T . List [ FileOrString ]] = None ,
3246+ full_deps : list [ FileOrString ] | list [ File ] | None = None ,
32463247 order_deps : T .Optional [T .List [File ] | T .List [FileOrString ]] = None ,
32473248 extra_args : T .Optional [T .List [str ]] = None ,
32483249 unity_sources : list [File ] | None = None ,
@@ -3358,7 +3359,7 @@ def generate_single_compile(self, target: build.BuildTarget, src: FileOrString,
33583359 # C++ import std is complicated enough to get its own method.
33593360 istd_args , istd_dep = self .handle_cpp_import_std (target , compiler )
33603361 commands .extend (istd_args )
3361- full_deps += istd_dep
3362+ full_deps += T . cast ( 'list[FileOrString]' , istd_dep )
33623363 if extra_args is not None :
33633364 commands .extend (extra_args )
33643365
0 commit comments