mr-edd.co.uk :: horsing around with the C++ programming language

Strange GCC error: expected unqualified-id before ‘OTHER’ token

[28th January 2011]

A brief interlude in the undo/redo series. Just posting this here so that Google can index the answer.

Today, we were seeing a strange error coming from one of our source files when compiled with Apple's g++ 4.0.1:

error: expected unqualified-id before ‘OTHER’ token

The problem here is that the file has a byte order mark, which g++ doesn't seem to like (at least this not flavour of g++, anyway).

If you happen to be using Vim, this should fix it, I think:

:setlocal nobomb
:w

Comments

outis

[10/02/2012 at 18:07:57]

Other causes include file corruption and non-ASCII characters with glyphs similar to ASCII characters. For example, there might be left/right double quotes rather than a double apostrophe or an en dash rather than a hyphen. A hex dump of the file will reveal suspicious multibyte characters, and it would be rather simple to write a script to replace multibyte characters with ASCII equivalents (as long as the script interpreter supported multibyte characters).

Ade Malsasa Akbar

[07/10/2014 at 03:14:48]

In my case today, apparently my code losts one for block, a pair of parentheses. After completing the for blocks, my g++ runs perfectly without errors. Maybe "unqualified id before" is what http://en.wikibooks.org/wiki/GCC_Debugging/g%2B%2B/Errors#expected_unqualified-id_before says: you didn't complete your parentheses yet. My g++ version is g++ (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3. I am using Ubuntu.

Thank you. I found this page from Google.

(optional)
(optional)
(required, hint)

Links can be added like [this one -> http://www.mr-edd.co.uk], to my homepage.
Phrases and blocks of code can be enclosed in {{{triple braces}}}.
Any HTML markup will be escaped.