• Brad King's avatar
    Diagnose object library self-reference · d89e10cd
    Brad King authored
    The code
    
        add_library(A OBJECT a.c)
        target_sources(A PRIVATE $<TARGET_OBJECTS:A>)
    
    used to crash CMake via infinite recursion while evaluating the
    generator expression.  Then the change in commit v3.9.0-rc1~266^2~1
    (cmGeneratorTarget: Replace source classifier implementation,
    2017-04-07) avoided the infinite recursion because GetKindedSources now
    creates a map entry and initializes it once.  If it is called again on
    the same target during that initialization, the partially computed
    results are returned.  This is still wrong but does not crash.
    Detect and diagnose this case instead.
    
    Co-Author: Ben Boeckel <ben.boeckel@kitware.com>
    Fixes: #16578
    d89e10cd
Name
Last commit
Last update
Auxiliary Loading commit data...
Help Loading commit data...
Licenses Loading commit data...
Modules Loading commit data...
Packaging Loading commit data...
Source Loading commit data...
Templates Loading commit data...
Tests Loading commit data...
Utilities Loading commit data...
.clang-format Loading commit data...
.clang-tidy Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.hooks-config Loading commit data...
CMakeCPack.cmake Loading commit data...
CMakeCPackOptions.cmake.in Loading commit data...
CMakeGraphVizOptions.cmake Loading commit data...
CMakeLists.txt Loading commit data...
CMakeLogo.gif Loading commit data...
CONTRIBUTING.rst Loading commit data...
CTestConfig.cmake Loading commit data...
CTestCustom.cmake.in Loading commit data...
CompileFlags.cmake Loading commit data...
Copyright.txt Loading commit data...
DartConfig.cmake Loading commit data...
README.rst Loading commit data...
bootstrap Loading commit data...
cmake_uninstall.cmake.in Loading commit data...
configure Loading commit data...
doxygen.config Loading commit data...