   error in SDL project(I haven't programmed in a long time).
  </code>#include <SDL/SDL.h>#include <iostream>#include <cstdlib>#include "stats.h"int main(){    SDL_Init(SDL_INIT_VIDEO);    atexit(SDL_Init);    return 0;}</code><code>#ifndef STATS_H_#define STATS_H_typedef struct stats{   int x,y;   int health;   enum mode{dead,alive,shootin};   }   #endif </code>here is the error logCompiler: Default compilerBuilding Makefile: "C:\Dev-Cpp\Makefile.win"Executing  make...make.exe -f "C:\Dev-Cpp\Makefile.win" allg++.exe -c Untitled1.cpp -o Untitled1.o -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include"  -I"C:/Dev-Cpp/include/c++/3.4.2/backward"  -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32"  -I"C:/Dev-Cpp/include/c++/3.4.2"  -I"C:/Dev-Cpp/include"   Untitled1.cpp:6: error: new types may not be defined in a return typeUntitled1.cpp:6: error: extraneous `int' ignoredUntitled1.cpp:6: error: invalid function declarationmake.exe: *** [Untitled1.o] Error 1Execution terminated   
  well, your stats struct doesnt have a terminating semicolon, like so(and BTW, this forum uses [ source ] and [ /source ] without the spaces )struct stats{int x,y;int health;enum mode{    dead,    alive,    shootin};};;  Why are you calling SDL_Init at the end of the program? That could be one of your problems. Another could be the fact that your typedef statement isn't really defining anything. Try putting a name after the struct block, with a semicolon on the end.   ;Original post by thugkilla#include <SDL/SDL.h>#include <iostream>#include <cstdlib>#include "stats.h"int main(){    SDL_Init(SDL_INIT_VIDEO);    atexit(SDL_Init);    return 0;}#ifndef STATS_H_#define STATS_H_typedef struct stats{   int x,y;   int health;   enum mode{dead,alive,shootin};}#endif...  Blah Blah!  ...First of all, why are you including unneeded files?  At that given source, all you need is the 'stats.h' file and 'SDL/SDL.h' file.Second, please don't call SDL_Init at the end.  No reason for it, instead, call SDL_Quit at the end.And third,struct foo {    enum { ... } ; // Good, you need the `;'} ; // You need it here, too!Good luck!C++; #include SDL/SDL.h;#include "stats.h"int main(){    SDL_Init(SDL_INIT_VIDEO);    return 0;    }#ifndef STATS_H_#define STATS_H_struct stats{int x,y;int health;enum mode{    dead,    alive,    shootin};};#endifI get these errors still.Compiler: Default compilerBuilding Makefile: "C:\Dev-Cpp\Makefile.win"Executing  make...make.exe -f "C:\Dev-Cpp\Makefile.win" allg++.exe Untitled1.o Project1_private.res -o "Project1.exe" -L"C:/Dev-Cpp/lib" -mwindows -lmingw32 -lSDLmain -lSDL  C:/Dev-Cpp/lib/libSDLmain.a(SDL_win32_main.o)(.text+0x39c): In function `console_main':/home/hercules/public_cvs/SDL12/src/main/win32/SDL_win32_main.c:249: undefined reference to `SDL_main'collect2: ld returned 1 exit statusmake.exe: *** [Project1.exe] Error 1Execution terminated   ;  look up some beginners tut to re-gain your SDL-abilities ;) for example look here, which could lead you  here;  in SDL programs, main _must_ look like one of theseQuote:int main( int argc, char *argv[] )int main( int argc, char **argv )the names can change...   ;Quote:Original post by rip-offin SDL programs, main _must_ look like one of theseQuote:int main( int argc, char *argv[] )int main( int argc, char **argv )the names can change...Good point.  Yeah, you can also just say:int main(int, char **)But then again, that's only if you aren't going to use the parameters.Good luck man.  (Uhhh...  woman?)Let me suggest something...http://www.lazyfooproductions.com/SDL_tutorialsC++   