CMake/Tests/RunCMake/TargetPropertyGeneratorExpr...
Stephen Kelly 61ce654742 Genex: Fix stack overflow in transitive property evaluation.
Commit v2.8.11~156^2~2 (Expand includes and defines transitively
in 'external' genexes., 2013-02-13) introduced a recursive loop
and a stack overflow during evaluation of a link implementation
which depends on a transitive property, such as

 add_library(empty1 ...)
 add_library(empty2 ...)
 target_link_libraries(empty1
   PRIVATE
     $<$<STREQUAL:$<TARGET_PROPERTY:INCLUDE_DIRECTORIES>,/foo/bar>:empty2>
 )

There is no use-case for code like that currently, but it should not
cause a stack overflow.

Avoid the recursion by reporting an error early if a case like this
is found.
2014-07-02 00:09:38 +02:00
..
BadInvalidName1-result.txt GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName1-stderr.txt Keep track of INCLUDE_DIRECTORIES as a vector of structs. 2013-01-03 13:45:40 -05:00
BadInvalidName1.cmake GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName2-result.txt GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName2-stderr.txt Keep track of INCLUDE_DIRECTORIES as a vector of structs. 2013-01-03 13:45:40 -05:00
BadInvalidName2.cmake GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName3-result.txt GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName3-stderr.txt Keep track of INCLUDE_DIRECTORIES as a vector of structs. 2013-01-03 13:45:40 -05:00
BadInvalidName3.cmake GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName4-result.txt GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName4-stderr.txt Keep track of INCLUDE_DIRECTORIES as a vector of structs. 2013-01-03 13:45:40 -05:00
BadInvalidName4.cmake GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName5-result.txt GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName5-stderr.txt Keep track of INCLUDE_DIRECTORIES as a vector of structs. 2013-01-03 13:45:40 -05:00
BadInvalidName5.cmake GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName6-result.txt GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName6-stderr.txt Keep track of INCLUDE_DIRECTORIES as a vector of structs. 2013-01-03 13:45:40 -05:00
BadInvalidName6.cmake GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName7-result.txt GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName7-stderr.txt Keep track of INCLUDE_DIRECTORIES as a vector of structs. 2013-01-03 13:45:40 -05:00
BadInvalidName7.cmake GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName8-result.txt GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadInvalidName8-stderr.txt Keep track of INCLUDE_DIRECTORIES as a vector of structs. 2013-01-03 13:45:40 -05:00
BadInvalidName8.cmake GenEx: Validate target and property names. 2012-10-09 08:26:45 -04:00
BadNonTarget-result.txt GenEx: Report actual target name not found, not "0" each time. 2012-10-09 08:26:40 -04:00
BadNonTarget-stderr.txt Fix spelling and typos (affecting binary data / module messages) 2013-05-07 08:39:19 -04:00
BadNonTarget.cmake Fix spelling and typos (affecting binary data / module messages) 2013-05-07 08:39:19 -04:00
BadSelfReference1-result.txt
BadSelfReference1-stderr.txt
BadSelfReference1.cmake
BadSelfReference2-result.txt
BadSelfReference2-stderr.txt
BadSelfReference2.cmake
BadSelfReference3-result.txt
BadSelfReference3-stderr.txt
BadSelfReference3.cmake
BadSelfReference4-result.txt
BadSelfReference4-stderr.txt
BadSelfReference4.cmake
BadSelfReference5-result.txt
BadSelfReference5-stderr.txt
BadSelfReference5.cmake
BadSelfReference6-result.txt
BadSelfReference6-stderr.txt
BadSelfReference6.cmake
CMakeLists.txt Cygwin: Avoid legacy warnings in RunCMake.* tests 2013-08-13 09:50:15 -04:00
LinkImplementationCycle1-result.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle1-stderr.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle1.cmake Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle2-result.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle2-stderr.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle2.cmake Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle3-result.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle3-stderr.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle3.cmake Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle4-result.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle4-stderr.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle4.cmake Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle5-result.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle5-stderr.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle5.cmake Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle6-result.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle6-stderr.txt Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
LinkImplementationCycle6.cmake Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
RunCMakeTest.cmake Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00
empty.cpp Genex: Fix stack overflow in transitive property evaluation. 2014-07-02 00:09:38 +02:00