1. I figured out the problem.

    The uses in the implementation part of Collections.Base contains units that have Collections.Base in the uses of their interface part. When I remove the Collections.Lists from the uses in Collections.Base (and also comment out the 4 places where TList is used) it can compile.

    I remember having the same problem some time ago. Somehow the compiler can not handle “cross referencing” (kind of) units with generics in them.

  2. The problem is deeper than that. You just removed the symptoms. It was related to the helper record TRules and how it was referenced. I’ve managed to fix that with some code reorganizations. All tests pass on XE.

  3. I Donwloaded the library and the package compiled well on Delphi 2010.
    But, when I try to compile the “samples” project, the compiler seems to misunderstand the syntax used. So, I removed the code that throws error on compilation, but I do believe that the sample project was written with Delphi XE, and I believe now that syntax used in Delphi XE is not supported in Delphi 2010. Is it righet ?

    Best regards.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.