"Two or more data types in declaration" error
madpenguin

Hi all,

I am trying to include a C header into a C++ program. In this header, I have the following:

1 typedef struct
2 {
3 //char ident[4];
4 int ident;
5 int version;
6 int skin_width; /* ignored - this is filled later when loading the texmap */
7 int skin_height; /* ignored - this is filled later when loading the texmap */
8 int frame_size;
9 int num_skins; /* ignored */
10 int num_vertices;
11 int num_texture_coords;
12 int num_triangles;
13 int num_gl_commands;
14 int num_frames;
15 int offset_skins; /* ignored */
16 int offset_texture_coords;
17 int offset_triangles;
18 int offset_frames;
19 int offset_gl_commands;
20 int offset_end;
21 } MD2_HEADER_STRUCT;

When I compile, I get:

Quote:

md2_model.h:31: error: two or more data types in declaration of 'MD2_HEADER_STRUCT'

...and wrapping the include up in extern "C" { didn't fix it. Has anyone seen this before and knows what it might be?

Posted here because it's not really allegro-related.

le_y_mistar

it's programming related, isnt there a programming sub forum?

bamccaig

There appears to be nothing wrong with the code you posted. I compiled it fine as C code. Google searches suggest that a function (or something) is declared with 2 data types... For example...
int char func(void); // More than one data type.
I guess make sure you're giving us the offending code and/or look for a declaration with two data types.

Thomas Fjellstrom

Which line is line 31?

Kibiz0r

My guess is a missing ; or } above it.

Thread #595856. Printed from Allegro.cc