Hello there,
This is my first post, and I'm sorry that it's a demanding one, but I truely am stunned. I have no idea why this is happening.
Me and a friend are porting a basic compiler from BlitzMax to C++ (as I miss C++ and want to continue a personal project using that language instead, and it's not very advanced at the moment, so it isn't very complicated code-wise).
I will not supply any code directly in this post, as the project is too large (but it's only around 1000 lines of code atm, with comments included in that number).
This is our problem in a nutshell (We are both using Ubuntu, with CodeBlocks 8.02, and GCC 4.4.3):
When we compile the project, we both recieve the error:
/usr/include/libio.h: 398: error: ivnalid use of '::' |
And this is the line of code in libio.h that it is refering to:
__io_write_fs *write; /* Write bytes. */
The build log points me back to the file "TranslationUnit.cpp", so we're guessing it has something to do with the dumpToDisc() function, as the error is on the line that specifies a buffer/handler for writing bytes.
The thing is though, that this does not happen when we compile the exact same project on Windows 7. So the error shouldn't be related to our code?
However, if we try to just include the file "fstream.h" (as that is the file in which the error is residing) into an empty .cpp file, it compiles fine. So the "libio.h"/"fstream.h" itself/themselves cannot be corrupted (unless they contain some bug that we are not aware of).
Can anyone help us with this? It is extremely weird and annoying. Any input is appreciated!
Here's the link to the project:
http://www.filedropper.com/ac1
Thanks in advance,
Anthony