On Mon, Mar 19, 2018 at 04:33:28PM +0000, Russel Winder via Digitalmars-d-learn wrote: [...] > I have been staring at this message so long, I have clearly stopped > actually reading it, hence outside assistance needed. > > Can someone please explain to me (probably in words of one syllable > since I am clearly being very unintelligent) how any code can deliver > an error message such as: [...]
Here's my reformatting of the error, that hopefully might be of assistance: > source/channels.d(161): Error: constructor > libdvbv5.ScanHandler_Ptr.this ( > dvb_v5_fe_parms* frontendParameters, > dvb_entry* entry, > const(int) dmx_fd, > extern (C) int function(void* args, dvb_v5_fe_parms* parms) > check_frontend, > const(uint) other_nit, > const(uint) timeout_multiplier) > is not callable using argument types ( > dvb_v5_fe_parms*, > dvb_entry*, > const(int), > extern (C) int function(void* _arguments, dvb_v5_fe_parms* > frontendParameters), > const(uint), > const(uint)) [...] Or, boiled down to the bare basics with extraneous identifiers removed: > source/channels.d(161): Error: constructor > libdvbv5.ScanHandler_Ptr.this ( > dvb_v5_fe_parms*, > dvb_entry*, > const(int), > extern (C) int function(void*, dvb_v5_fe_parms*), > const(uint), > const(uint)) > is not callable using argument types ( > dvb_v5_fe_parms*, > dvb_entry*, > const(int), > extern (C) int function(void*, dvb_v5_fe_parms*), > const(uint), > const(uint)) [...] Which is rather odd, since the parameter types correspond to each other exactly. So why the compiler would reject the code, I honestly have no idea. One wild guess is if some of the symbols come from different modules, such that you might have modA.dvb_entry vs. modB.dvb_entry, for example, which would be a type mismatch. Or if one symbol was declared in D linkage but the other in C linkage, which is perhaps a more likely cause. But since the compiler doesn't tell us the FQN of the identifiers, it's anybody's guess whether this is actually the problem, or which are the offending identifiers. T -- Prosperity breeds contempt, and poverty breeds consent. -- Suck.com