[LLVMdev] dependent passes
Ryan M. Lefever
lefever at crhc.uiuc.edu
Wed Sep 27 10:54:05 PDT 2006
Thanks Chris. The problem that I was seeing is that when Y is defined
in a separate file from X, in an anonymous namespace, X has no way to
refer to Y. Everything was fixed when I gave a name to the namespace
that Y was defined in, and contrary to my previous post, that namespace
name does not necessarily need to be llvm.
Chris Lattner wrote:
> On Wed, 27 Sep 2006, Ryan M. Lefever wrote:
>> I think that we are talking about two different things. I understand
>> that in order to use LLVM classes you must either qualify them with the
>> llvm namespace or use the statement "using namespace llvm;" What I'm
>> saying is that it has been my experience that when a pass Y depends on
>> another pass X, i.e, Y is a required analysis of X, then Y must be
>> defined within the llvm namespace rather than in an anonymous namespace
>> as http://llvm.org/docs/WritingAnLLVMPass.html suggests it should be.
>> I'm wondering if that is correct, or if I'm missing something.
> If X depends on Y, and Y is defined in another file in an anonymous
> namespace, there is no way for X to refer to Y. This is how C++ anonymous
> namespaces work, which doesn't have anything to do with passes.
> I've used passes defined in other (non-anon) namespaces, and they seem to
> work fine. Can you elaborate on the problem you're seeing?
Ryan M. Lefever [http://www.ews.uiuc.edu/~lefever]
More information about the llvm-dev