Waitrud Weber’s blog

things and reminders for memories

WindowsAPI: windows-make: Analyzer: could not print it well.

the below was compiled mistaken cuase of my fault.
their messages in not ensured.
I beleive we could compile the source code even though we don't touch it after first compiling it.

https://github.com/WaitrudWeber/source_zip/blob/master/analyzer_20191030.zip
https://github.com/WaitrudWeber/source_zip/blob/master/analyzer_20191030-001.zip

PS C:\Users\soresore soreda\source\sourcevisualizer\analyzer_20191030> c:\aaa\bin\make.exe all
mingw32-g++ -Wall -O3 -I C:\MinGW\include\ -L C:\MinGW\lib -lgdi32 -lws2_32 -lwsock32 -mwindows -o analyzer_C.o -c analyzer_C.cpp
analyzer_C.cpp: In member function 'int Analyzer::parse(char*)':
analyzer_C.cpp:81:25: error: 'm_fread' was not declared in this scope
   m_fread ( dummy, 1, fp);
                         ^
analyzer_C.cpp:61:6: warning: unused variable 'previous_index' [-Wunused-variable]
  int previous_index = 0;
      ^~~~~~~~~~~~~~
analyzer_C.cpp: In member function 'int Analyzer::parse_token(char*)':
analyzer_C.cpp:168:61: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
    int return_value = this->skip_to( "*/", &i , file_end, fp);
                                                             ^
analyzer_C.cpp:168:8: warning: unused variable 'return_value' [-Wunused-variable]
    int return_value = this->skip_to( "*/", &i , file_end, fp);
        ^~~~~~~~~~~~
make: *** [Makefile:21: analyzer_C.o] Error 1
PS C:\Users\soresore soreda\source\sourcevisualizer\analyzer_20191030> c:\aaa\bin\make.exe all
mingw32-g++ -Wall -O3 -I C:\MinGW\include\ -L C:\MinGW\lib -lgdi32 -lws2_32 -lwsock32 -mwindows -o analyzer_C.o -c analyzer_C.cpp
analyzer_C.cpp: In member function 'int Analyzer::parse(char*)':
analyzer_C.cpp:61:6: warning: unused variable 'previous_index' [-Wunused-variable]
  int previous_index = 0;
      ^~~~~~~~~~~~~~
analyzer_C.cpp:62:7: warning: unused variable 'dummy' [-Wunused-variable]
  char dummy[256];
       ^~~~~
analyzer_C.cpp: In member function 'int Analyzer::parse_token(char*)':
analyzer_C.cpp:168:61: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
    int return_value = this->skip_to( "*/", &i , file_end, fp);
                                                             ^
analyzer_C.cpp:168:8: warning: unused variable 'return_value' [-Wunused-variable]
    int return_value = this->skip_to( "*/", &i , file_end, fp);
        ^~~~~~~~~~~~
analyzer_C.cpp: In member function 'int Analyzer::parse(char*)':
analyzer_C.cpp:104:84: warning: 'a_token' may be used uninitialized in this function [-Wmaybe-uninitialized]
    err_msg_006( "else: parse_token: |%s| a_token: |%s|\r\n", parse_token, a_token );
                                                                                    ^
mingw32-g++ array_counter.o wTextarea.o wButton.o button.o winmain_001.o wButtonController.o clipboard.o something_word.o wController.o wTextareaController.o thread_print.o client.o vCalculation.o vPoint.o vTriangle.o vIntersection.o vModel.o vScreen.o display_threeD.o wEvent.o wEvent.o wCanvasController.o vLine.o Print.o list_directory.o parse.o numbering.o sender.o wJavaStructure.o wMethod.o vPointStructure.o vPointLinear.o w3DInfo.o w3DCalculation.o wC_structure.o wC_structure_Display.o analyzer_C.o aToken.o -Wall -O3 -I C:\MinGW\include\ -L C:\MinGW\lib -l gdi32 -lws2_32 -lwsock32 -o winmain_001.exe
PS C:\Users\soresore soreda\source\sourcevisualizer\analyzer_20191030>
---

It doesn't print next Analyzer::parse: starts.

//
//
//
//
//
int Analyzer::parse ( char* filename ) {
	FILE *fp;
	aToken *iToken = nullptr;
	char *parse_token;
	int previous_index = 0;
	char dummy[256];
	char* a_token;

	int mode_token = 0;
	iToken = new aToken();
	fp = fopen ( filename, "rb" );
	int file_end = filesize ( fp );

	int anz_count = 0;
	int inc_count = 0;

	Sleep(1000);

	level_error_msg = 2;
	set_level_error_msg = 3;
	// printf ("Analyzer::parse: starts.\r\n");
	err_msg_006 ("Analyzer::parse: starts.\r\n");

	for( int i=0; igetToken( fp, &i, &file_end );

		if ( m_compare( (char*) "#define", parse_token ) == 1 ) {
			iToken->block_to( (char*)"\n", &i, file_end, fp);
			a_token = iToken->block;
			err_msg_006( "#define a_token: |%s|\r\n", a_token );
			// 20190923 printed and qualified.
			// dummy[0] = iToken->getChar( fp, &i, &file_end);
			// dummy[1] = '\0';
			// printf("#define next: i:%d  dummy: |%s|\r\n", i, dummy );
			// exit(-1);
			// end of m_fread: 1
			// #define next: i:1903  dummy: |#|
			anz_count++;
		} else if ( m_compare( (char*) "#include", parse_token ) == 1 ) {
			iToken->block_to( (char*)"\n", &i, file_end, fp);
			a_token = iToken->block;
			err_msg_006( "#include a_token: |%s|\r\n", a_token );
			inc_count++;
		} else {
			err_msg_006( "else: parse_token: |%s| a_token: |%s|\r\n", parse_token, a_token );
			err_msg_006("Exit(-1): Analyzer::parse: %s\r\n", filename);
			exit(-1);
		}

		iToken->free_main_token ();

		if ( inc_count == 6 ) break;
		// if ( anz_count == 3 ) break;

		switch( mode_token ) {
		case 0:
			break;
		case 1:
			break;
		}
	}

	fclose(fp);

	err_msg_006("Analyzer::parse: ends.\r\n");

	return 1;

}

---

int print_socket_msg = 0;

//
//
//
//
//
void err_msg_006(const char *fmt, ...)
{
    va_list ap;
    int argc;
    char** argv;
    int send_success;
	char* result;

	if ( set_level_error_msg <= level_error_msg ) return;

    va_start(ap, fmt);
	result = err_doit_002(0, 0, fmt, ap);
    va_end(ap);

	if ( print_socket_msg != 1 ) return;

	argc = 3;
	argv = (char**) malloc( sizeof(char**) * argc ) ;
	set_sender_default_parameters ( &argc, argv ) ;

	argv[2] = (char *) result;
	send_success = sender_main ( argc, argv ) ;

}

---

Called: InvalidateRect( this->event->hWnd, NULL, TRUE)
WM_MESSG 004: 258 *(p_evt->uMsg):258 uMsg:258 p_evt->uMsg: 6552728 &uMsg: 6552728
WM_MESSG 000: hWnd 658048: uMsg 15: wParam 0: lParam 0: canvas 4342156: btc 4342176: *(p_evt->uMsg) 15:
WM_PAINT 001: 15 *(p_evt->uMsg):15 uMsg: 15
WM_MESSG 000: hWnd 658048: uMsg 20: wParam 100732064: lParam 0: canvas 4342156: btc 4342176: *(p_evt->uMsg) 20:
WM_MESSG 003: 20 *(p_evt->uMsg):20
wButtonController::Process: 20 / 15<-WM_PAINT wParam 100732064 lParam 0 this->event->uMsg:6551900 *(this->event->uMsg)=20
Called: InvalidateRect( this->event->hWnd, NULL, TRUE)
WM_MESSG 004: 20 *(p_evt->uMsg):20 uMsg:20 p_evt->uMsg: 6551900 &uMsg: 6551900
WM_PAINT 002: 15 *(p_evt->uMsg):20 uMsg: 15
WM_MESSG 003: 15 *(p_evt->uMsg):20
wButtonController::Process: 20 / 15<-WM_PAINT wParam 100732064 lParam 0 this->event->uMsg:6551900 *(this->event->uMsg)=20
wButtonController::WM_PAINT:
this->event->main_mode = 3
default:
Analyzer::parse: starts.