Today I got in a state where an object file refused to be rebuilt after I touched a cpp file that contributed to it. This was on macOS 10.12.6, and I'm using sccache but I think that's not relevant here. My base revision was mozilla-central rev `6b5221949e77`. The object file in question was `gfx/layers/Unified_cpp_gfx_layers9.o`. `Unified_cpp_gfx_layers9.cpp` includes `gfx/layers/ipc/SharedRGBImage.cpp`. ``` Markuss-MacBook-Pro:obj-m-opt mstange$ ls -l gfx/layers/Unified_cpp_gfx_layers9.cpp -rw-r--r-- 1 mstange staff 7521 7 Apr 00:29 gfx/layers/Unified_cpp_gfx_layers9.cpp Markuss-MacBook-Pro:obj-m-opt mstange$ ls -l gfx/layers/Unified_cpp_gfx_layers9.o -rw-r----- 1 mstange staff 13481508 9 Apr 22:27 gfx/layers/Unified_cpp_gfx_layers9.o Markuss-MacBook-Pro:obj-m-opt mstange$ ls -l ../mozilla/gfx/layers/ipc/SharedRGBImage.cpp -rw-r--r-- 1 mstange staff 6107 15 Apr 17:13 ../mozilla/gfx/layers/ipc/SharedRGBImage.cpp ``` As a result, when I made changes, the build system would happily recompile other code and relink everything into XUL, and then things would crash at runtime because of incorrect vtables. I have deleted `Unified_cpp_gfx_layers9.o` and things are working correctly again.
Bug 1544576 Comment 0 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Today I got in a state where an object file refused to be rebuilt after I touched a cpp file and a few header files that contributed to it. This was on macOS 10.12.6, and I'm using sccache but I think that's not relevant here. My base revision was mozilla-central rev `6b5221949e77`. The object file in question was `gfx/layers/Unified_cpp_gfx_layers9.o`. `Unified_cpp_gfx_layers9.cpp` includes `gfx/layers/ipc/SharedRGBImage.cpp`. ``` Markuss-MacBook-Pro:obj-m-opt mstange$ ls -l gfx/layers/Unified_cpp_gfx_layers9.cpp -rw-r--r-- 1 mstange staff 7521 7 Apr 00:29 gfx/layers/Unified_cpp_gfx_layers9.cpp Markuss-MacBook-Pro:obj-m-opt mstange$ ls -l gfx/layers/Unified_cpp_gfx_layers9.o -rw-r----- 1 mstange staff 13481508 9 Apr 22:27 gfx/layers/Unified_cpp_gfx_layers9.o Markuss-MacBook-Pro:obj-m-opt mstange$ ls -l ../mozilla/gfx/layers/ipc/SharedRGBImage.cpp -rw-r--r-- 1 mstange staff 6107 15 Apr 17:13 ../mozilla/gfx/layers/ipc/SharedRGBImage.cpp ``` As a result, when I made changes, the build system would happily recompile other code and relink everything into XUL, and then things would crash at runtime because of incorrect vtables. I have deleted `Unified_cpp_gfx_layers9.o` and things are working correctly again.
Today I got in a state where an object file refused to be rebuilt after I touched a cpp file and a few header files that contributed to it. This was on macOS 10.12.6, and I'm using sccache but I think that's not relevant here. My base revision was mozilla-central rev `6b5221949e77`. The object file in question was `gfx/layers/Unified_cpp_gfx_layers9.o`. `Unified_cpp_gfx_layers9.cpp` includes `gfx/layers/ipc/SharedRGBImage.cpp`. ``` Markuss-MacBook-Pro:obj-m-opt mstange$ ls -l gfx/layers/Unified_cpp_gfx_layers9.cpp -rw-r--r-- 1 mstange staff 7521 7 Apr 00:29 gfx/layers/Unified_cpp_gfx_layers9.cpp Markuss-MacBook-Pro:obj-m-opt mstange$ ls -l gfx/layers/Unified_cpp_gfx_layers9.o -rw-r----- 1 mstange staff 13481508 9 Apr 22:27 gfx/layers/Unified_cpp_gfx_layers9.o Markuss-MacBook-Pro:obj-m-opt mstange$ ls -l ../mozilla/gfx/layers/ipc/SharedRGBImage.cpp -rw-r--r-- 1 mstange staff 6107 15 Apr 17:13 ../mozilla/gfx/layers/ipc/SharedRGBImage.cpp ``` As a result, when I made changes, the build system would happily recompile other code, but `Unified_cpp_gfx_layers9.o` would remain the same, and then mixed stuff would be linked together into XUL, and then things would crash at runtime because of incorrect vtables. I have deleted `Unified_cpp_gfx_layers9.o` and things are working correctly again.