<div dir="ltr"><br>Hello,<br><br>Here is the error: <div><br>Error opening '../lib/LLVMENTRA.dylib': dlopen(../lib/LLVMENTRA.dylib, 9): Symbol not found: __ZN8CiaoType14typeInstances1E<div><br></div><div>typeInstances1 is a static variable defined in a class, whenever it is used during a function pass I get this error see below a minimal class definition.<br>

<br><br>class A{<br> static MapVector<Type*, A *> typeInstances1;<br> public:<br> static CiaoType * create(Type* T)<br> {<br>    if(CiaoType * CT= typeInstances1.lookup(T))<br>        return CT;<br>    else<div>     //create new instance and return</div>

<div> }</div><div>};</div><div><br></div><div>As long as I don't call the create method, everything works fine. Any idea why the static variable symbol is not found in the dynamic library?</div><div><br></div><div><br>

</div><div>PS:</div><div>here is how I load and run my pass using opt</div><div><br>./opt -analyze -load ../lib/LLVMENTRA.dylib -instnamer -mypass foo.ll <br></div><div><br></div><div>Regards</div><div>Umer<br><br><br></div>

</div></div></div>