From: naturalis AT cais DOT kaist DOT ac DOT kr (Ho-Jin Dan) Subject: bug??? 20 May 1998 09:40:41 -0700 Message-ID: <35618130.A2BBBB25.cygnus.gnu-win32@cais.kaist.ac.kr> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit To: "gnu-win32 AT cygnus DOT com"  i got error(warning) messages in compiling the following source. from cygnus gnu-win32 b19.1 BASH.EXE-2.01$ gcc wingui.c -o wingui.exe -lgdi32 -luser32 wingui.c: In function `TimeCal': wingui.c:67: warning: assignment makes pointer from integer without a cast wingui.c:69: warning: assignment makes pointer from integer without a cast BASH.EXE-2.01$ and from the lcc compiler, similar errors! occured. ... char* TimeCal( void ) {  int i;  static struct tm *newtime;  static time_t t;  static char cTime[50];  static char *Total;  char *str = " ";  t = time( NULL );  newtime = localtime( &t );  strcpy( cTime, asctime(newtime) );  cTime[strlen(cTime) - 1] = '\0';  Total = strtok(cTime, str);          <-- #67 if (char*) is inserted, it is compiled sucessfully.  for ( i = 0; i < 3; i++ )   Total = strtok(NULL, str);          <-- #69 if (char*) is inserted, it is compiled sucessfully.  return Total; } but i succeed to compile it for a console program with djgpp & cygnus-win32... and my friend report me that VC++5.0 handles it correctly. what makes this difference??? or is it a compiler error? thank you in advance~         #include #include #include   LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszArg, int nCmdShow) {         HWND hWnd;         MSG msg;         WNDCLASS WndClass;         char szAppName[] ="This program is to create window";         WndClass.style = CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS;         WndClass.lpfnWndProc = WndProc;         WndClass.cbClsExtra = 0;         WndClass.cbWndExtra = 0;         WndClass.hInstance = hInstance;         WndClass.hIcon = LoadIcon(NULL, IDI_HAND);         WndClass.hCursor = LoadCursor(NULL, IDC_IBEAM);         WndClass.hbrBackground = GetStockObject(WHITE_BRUSH);         WndClass.lpszMenuName = NULL;         WndClass.lpszClassName = szAppName;         if(!RegisterClass(&WndClass)) return FALSE;         hWnd = CreateWindow(                                 szAppName,                                 szAppName,                                 WS_OVERLAPPEDWINDOW,                                 CW_USEDEFAULT,                                 CW_USEDEFAULT,                                 CW_USEDEFAULT,                                 CW_USEDEFAULT,                                 NULL,                                 NULL,                                 hInstance,                                 NULL                         );         ShowWindow(hWnd, nCmdShow);         UpdateWindow(hWnd);         while(GetMessage(&msg, NULL, 0, 0))         {                 TranslateMessage(&msg);                 DispatchMessage(&msg);         }         return msg.wParam; } char* TimeCal( void ) {         int i;         static struct tm *newtime;         static time_t t;         static char cTime[50];         static char *Total;         char *str = " ";         t = time( NULL );         newtime = localtime( &t );         strcpy( cTime, asctime(newtime) );         cTime[strlen(cTime) - 1] = '\0';         Total = (char*)strtok(cTime, str);         for ( i = 0; i < 3; i++ )                 Total = (char*)strtok(NULL, str);     return Total; } LRESULT CALLBACK WndProc( HWND hWnd, UINT mesg, WPARAM wParam, LPARAM lParam ) {         HDC hDC;         static char szTimer[80];         switch( mesg )     {                 case WM_CREATE :                         SetTimer( hWnd, 100, 1000, NULL );                         return FALSE;                 case WM_TIMER :                         switch( LOWORD(wParam))                         {                                 case 100 :                                         hDC = GetDC( hWnd );                                         TextOut( hDC, 100, 100, szTimer,                                                         sprintf(szTimer, "Current Time : %s", TimeCal())                                         );                                         ReleaseDC( hWnd, hDC );                                         break;                         }                         return FALSE;           case WM_DESTROY :             PostQuitMessage(0);             return FALSE;     }     return DefWindowProc(hWnd, mesg, wParam, lParam); } - For help on using this list (especially unsubscribing), send a message to "gnu-win32-request AT cygnus DOT com" with one line of text: "help".