@@ -102,38 +102,42 @@ endfunction
102102###
103103### generic assistance functions
104104###
105- function match_name(element, name)
106- define my.element = match_name.element
107- return defined(my.element) & (my.element.name = my.name)
105+ function match_element_name(alpha, beta)
106+ define my.alpha = match_element_name.alpha
107+ define my.beta = match_element_name.beta
108+ return defined(my.alpha) & defined(my.beta) & (object_base_from_element(my.alpha) = object_base_from_element(my.beta))
108109endfunction
109110
110- function exists_collision(root, name )
111+ function exists_collision(root, element )
111112 define my.root = exists_collision.root
112- return count(my.root.collision, match_name(count, my.name)) > 0
113+ define my.element = exists_collision.element
114+ return count(my.root.collision, match_element_name(count, my.element)) > 0
113115endfunction
114116
115- function add_collision(root, name )
117+ function add_collision(root, element )
116118 define my.root = add_collision.root
117- if (defined(my.root) & !exists_collision(my.root, my.name))
119+ define my.element = add_collision.element
120+ if (defined(my.root) & !exists_collision(my.root, my.element))
118121 new my.root.collision as _collision
119- _collision.name = my.name
122+ _collision.name = my.element. name
120123 endnew
121124 endif
122125 return my.root
123126endfunction
124127
125- function collides_file_name(root, name )
128+ function collides_file_name(root, element )
126129 define my.root = collides_file_name.root
127- return count(my.root.file, match_name(count, my.name)) > 1
130+ define my.element = collides_file_name.element
131+ return count(my.root.file, match_element_name(count, my.element)) > 1
128132endfunction
129133
130134function populate_collisions(collisions, file_data)
131135 define my.collisions = populate_collisions.collisions
132136 define my.file_data = populate_collisions.file_data
133137
134138 for my.file_data.file as _file
135- if (collides_file_name(my.file_data, _file.name ))
136- add_collision(my.collisions, _file.name )
139+ if (collides_file_name(my.file_data, _file))
140+ add_collision(my.collisions, _file)
137141 endif
138142 endfor
139143endfunction
@@ -798,7 +802,7 @@ endfunction emit_project
798802. define my.collisions = emit_compile_item.collisions
799803. define my.file_record = emit_compile_item.file_record
800804.
801- . if (!exists_collision(my.collisions, my.file_record.name ))
805+ . if (!exists_collision(my.collisions, my.file_record))
802806. emit_file_record_item("ClCompile", my.file_record)
803807. else
804808. emit_item_with_object("ClCompile", my.file_record)
0 commit comments