www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 18518] New: use stable names for multilib object files (to

https://issues.dlang.org/show_bug.cgi?id=18518

          Issue ID: 18518
           Summary: use stable names for multilib object files (to enable
                    incremental update of archives)
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P2
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: code dawg.eu

At the moment the names for multilib objects are created based on a count.
https://github.com/dlang/dmd/blob/9691eba9441f7f165359716f80f46486ea09fb46/src/dmd/glue.d#L167

unicode_tables.o
unicode_tables_3a86_5f8.o
unicode_tables_3a87_521.o
unicode_tables_3a88_3a1.o
unicode_tables_3a89_62c.o

This means those names are not stable when using a different command line.
If we made the names unique based only on the primary symbol of that multilib
object, then we had a stable order that is invariant to modules order on the
command line.
This could then be used to incrementally update a multilib archive by
recompiling only modified modules.

--
Feb 24 2018