-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Pointer is not a function pointer" #686
Comments
We should really improve the error message here. What it should be is something like |
I'm having the same problem with |
Which version of Clang are you using? |
I just updated to the latest xcode...so you're probably right that the latest LLVM has some tweaks that break things.
|
I've just confirmed that I can replicate this using the latest Xcode. I think it should be easy to fix. |
The specific example listed here works now, but the error message is still misleading. |
The error message should get the metadata about the pointer, so we can at least see what the symbol we tried to call was. |
Current status: the specific problem that started this thread has been solved. If I deliberately call an external function that does not have an override, I get a message saying "no implementation or override found", and a useful source location, but it still doesn't tell me what function it tried to call. |
Some fixes to the pretty printers in GaloisInc/crucible#574 should fix this bug. |
The error message seems good now. |
What function pointer?
I've only gotten this error when using
memset
, and only when passing in an array tof
or mallocing an array (as I did above). If I give a stack allocated arrayuint32_t x[1]
to memset thensaw
does not complain.Also, there is a printing inconsistency --- HeapAlloc does not put quotes around the filename whereas StackAlloc does, and the stuff at the beginning uses parens around the filename.
The text was updated successfully, but these errors were encountered: