I've "solved" the problem now, but I really feel like a massive rant!!! Sorry guys. I've spent the last few hours fighting with an unresolved symbol error. I'm much more a C programmer than C++, so I was staring at the mangled name (and unmangling it to see if that helped) for AGES.
Then I tried scrubbing my whole project and pasting the files back in. I pored over the highest verbosity of linker logs looking for a clue.
Finally, I became convinced that it must be Visual Studio at fault -- ridiculous right, but I used to be a software tools engineer so I know very vididly that compilers aren't ironglad.
So I decided to try MingW, which nearly had me throwing my computer across the room (I'm really not an angry person.... just been a rough morning).
So then I remembered that of course, my computer dual boots so I have a perfectly happy version of g++ just a few seconds away.
Same error!! Except I'm slightly more au fait with GNU tools, so I was able to have a dig around the symboll table/disassembly and make sure that the function really was there.
Anyway, want to know the conclusion to this epic saga? Of course you do, you're on the edge of your seats, right??
I'll give you a clue. It starts with "mis" and ends with "spelling". Apparently I think "column" is spelled "columnn".
Would have been simple enough to figure out if I hadn't spelled it correctly in one source file, and incorrectly in both the header and the other file. Hence linker error rather than warm fuzzy compiler error.
Anyway, sorry for the rant. I just feel pretty thick!!! I do use version control even for casual stuff, so I could have rolled myself back out of this mess. But Git on Windows..... not so much fun.
Anyway, now I have totally selfishly whinged at you all, I'm off to the C forum to try to make up for it a bit. Hope everyone is well!