[LLVMdev] Port to Solaris' Sun Studio 8
Michael Smith
Michael.Smith at synopsys.com
Tue Mar 14 15:13:32 PST 2006
Well, line 364 wasn't actually what was holding me up, so it's a bad
example, but the problem's still relevant. Using cast<...>(iter),
dyn_cast<...>(iter), or isa<...>(iter) results in the error messages
mentioned below.
________________________________
When compiling LoadValueNumbering.cpp, I get the following errors:
"~/bin/../src/include/llvm/Support/Casting.h", line 51: Error: Could not
find a match for llvm::AllocationInst::classof(const
llvm::ilist_iterator<llvm::Instruction>*).
"~/bin/../src/include/llvm/Support/Casting.h", line 68: Where: While
instantiating "llvm::isa_impl<llvm::AllocationInst,
llvm::ilist_iterator<llvm::Instruction>>(const
llvm::ilist_iterator<llvm::Instruction>&)".
"~/bin/../src/include/llvm/Support/Casting.h", line 68: Where:
Instantiated from non-template code.
This seems to be linked with line 364 in LoadValueNumbering.cpp, and my
best guess is that the template struct simplify_type in ilist isn't
being picked up for some reason, so classof gets an ilist_iterator as an
argument rather than the object the iterator points to. It happens every
time I try to dyn_cast<...>(I) where I is an ilist_iterator, but in
other cases I got around it by manually retrieving the iterator's value
with dyn_cast<...>(&*I). On line 364 this technique doesn't work.
~Michael
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20060314/f32e275a/attachment.html>
More information about the llvm-dev
mailing list