I am getting an invalid arguments error in eclipse, though I am confident my arguments are good. The suggested arguments contains a '?' which I think may indicate the problem, though I do not know how to fix it. 

I have done my best to copy the example I saw here:  

<http://www.cplusplus.com/reference/clibrary/cstring/memset/>

In order to be certain that I am getting the args right.

```
#include <stdio.h>
#include <string.h>
void foo()
{
    char str[] = "why oh why does my IDE give me errors when I know my args are good?";
    memset(str, '-', 4);
    puts(str);
}

```

Eclipse gives me the following error on the memset line:

Invalid arguments ' Candidates are: void \* memset(void \*, int, ?) '

What could be causing this? And what is up with that '?' as the 3rd arg?

Thanks in advance!

PS: Just noticed I am getting similar errors when I try to use operations like malloc, calloc, etc.