change ISO standard C++

Hi Can you help me,

I am trying to compile an application, but I keep getting the following error:


ISO C++ forbids declaration of ‘RefPtr’ with no type

This is when I try to use the "make" command on my laptop, but when I use this command on another computer, both running ubuntu 10.04, it compiles and executes perfect.

I am trying to see if there is a way to set my g++ compiler away from ISO but I have no idea how to.

Can anybody help me?

Thank you
Thank you very much in advance
C++ dictates that a function (constructors/destructors excluded ) whould have a return type.

Can you post the offending code??
The following is the whole error

[error]
menuapplication.hpp:135: error: ISO C++ forbids declaration of ‘RefPtr’ with no type
menuapplication.hpp:135: error: typedef name may not be a nested-name-specifier
menuapplication.hpp:135: error: expected ‘;’ before ‘<’ token
menuapplication.hpp:136: error: ‘ViewRefPtr’ was not declared in this scope
menuapplication.hpp:136: error: template argument 1 is invalid
menuapplication.hpp:136: error: template argument 2 is invalid
[/error]

and these are the two lines

[line 135]
typedef Radiant::RefPtr<MultiWidgets::ViewWidget> ViewRefPtr;
[/line 135]

[line 136]
typedef std::vector<ViewRefPtr> Views;
[/line 136]

it seems to be a problem with the compiler as when I run the eaxct same source code on the other computer I am working on, it runs perfectly?
I would focus on:

typedef name may not be a nested-name-specifier


is menuapplication.hpp your own code or some library header?
It is one I made
then I would try either

1
2
using namespace Radiant;
using namespace MultiWidgets;


before Line 135 (and simplifying Line 135, of course) and seeing if the compiler can get past that line
Topic archived. No new replies allowed.