Dear GCC Team!
My name is Gavrilov Vladimir, and I am Associate Professor in Nizhny
Novgorod State University (Russian Federation).

To use in educational process of this university, I wrote lexical
analyzer generator Myauka (source code:
https://github.com/gavr-vlad-s/myauka). This generator is written in
C++14 and generates C++14 text.

I build project Myauka using applied Makefile (this Makefile was
generated my own build system). If I use g++ having version 5.1.0 or
5.4.0, then there are no errors and there are no warnings. But if I
use g++ having version 6.2.0, then I get errors.  The output of the
compiler is contained in the file "myauka-build-log-with-g++.6.1.txt".

Moreover, if in lines 46-48 of file 'include/act_expr_parser.h'  replace
struct Parser_action_info{
    uint8_t kind : 2;
    uint8_t arg  : 6;
};
with
struct Parser_action_info{
    uint8_t kind;
    uint8_t arg;
};
then there are no errors and there are no warnings.

Sincerely yours,
   Gavrilov Vladimir
pesets@belka:~/projects/myauka$ make
g++ -c src/myauka.cpp -o myauka.o -std=c++14 -Wall 
mv myauka.o ./build
g++ -c src/main_parser_data.cpp -o main_parser_data.o -std=c++14 -Wall 
mv main_parser_data.o ./build
g++ -c src/search_char.cpp -o search_char.o -std=c++14 -Wall 
mv search_char.o ./build
g++ -c src/dfa.cpp -o dfa.o -std=c++14 -Wall 
mv dfa.o ./build
g++ -c src/char_conv.cpp -o char_conv.o -std=c++14 -Wall 
mv char_conv.o ./build
g++ -c src/attributed_char_trie.cpp -o attributed_char_trie.o -std=c++14 -Wall 
mv attributed_char_trie.o ./build
g++ -c src/file_contents.cpp -o file_contents.o -std=c++14 -Wall 
mv file_contents.o ./build
g++ -c src/keyword_delimiter_parser.cpp -o keyword_delimiter_parser.o 
-std=c++14 -Wall 
mv keyword_delimiter_parser.o ./build
g++ -c src/move_by_ext.cpp -o move_by_ext.o -std=c++14 -Wall 
mv move_by_ext.o ./build
g++ -c src/list_to_columns.cpp -o list_to_columns.o -std=c++14 -Wall 
mv list_to_columns.o ./build
g++ -c src/move_by_ext_from_curr_dir.cpp -o move_by_ext_from_curr_dir.o 
-std=c++14 -Wall 
mv move_by_ext_from_curr_dir.o ./build
g++ -c src/char_trie.cpp -o char_trie.o -std=c++14 -Wall 
mv char_trie.o ./build
g++ -c src/num_str_parser.cpp -o num_str_parser.o -std=c++14 -Wall 
mv num_str_parser.o ./build
g++ -c src/categories.cpp -o categories.o -std=c++14 -Wall 
mv categories.o ./build
g++ -c src/generalized_char.cpp -o generalized_char.o -std=c++14 -Wall 
mv generalized_char.o ./build
g++ -c src/fsize.cpp -o fsize.o -std=c++14 -Wall 
mv fsize.o ./build
g++ -c src/ndfa.cpp -o ndfa.o -std=c++14 -Wall 
mv ndfa.o ./build
g++ -c src/error_count.cpp -o error_count.o -std=c++14 -Wall 
mv error_count.o ./build
g++ -c src/expr_scaner.cpp -o expr_scaner.o -std=c++14 -Wall 
mv expr_scaner.o ./build
g++ -c src/get_init_state.cpp -o get_init_state.o -std=c++14 -Wall 
mv get_init_state.o ./build
g++ -c src/main_parser.cpp -o main_parser.o -std=c++14 -Wall 
mv main_parser.o ./build
g++ -c src/simple_regex_parser.cpp -o simple_regex_parser.o -std=c++14 -Wall 
mv simple_regex_parser.o ./build
g++ -c src/create_dir_if_not_exists.cpp -o create_dir_if_not_exists.o 
-std=c++14 -Wall 
mv create_dir_if_not_exists.o ./build
g++ -c src/detalize_commands.cpp -o detalize_commands.o -std=c++14 -Wall 
mv detalize_commands.o ./build
g++ -c src/comments_parser.cpp -o comments_parser.o -std=c++14 -Wall 
mv comments_parser.o ./build
g++ -c src/codes_and_newline.cpp -o codes_and_newline.o -std=c++14 -Wall 
mv codes_and_newline.o ./build
g++ -c src/size_t_trie.cpp -o size_t_trie.o -std=c++14 -Wall 
mv size_t_trie.o ./build
g++ -c src/trie_for_set_of_char.cpp -o trie_for_set_of_char.o -std=c++14 -Wall 
mv trie_for_set_of_char.o ./build
g++ -c src/idx_to_string.cpp -o idx_to_string.o -std=c++14 -Wall 
mv idx_to_string.o ./build
g++ -c src/main_scaner.cpp -o main_scaner.o -std=c++14 -Wall 
mv main_scaner.o ./build
g++ -c src/groupped_dfa.cpp -o groupped_dfa.o -std=c++14 -Wall 
mv groupped_dfa.o ./build
g++ -c src/first_chars.cpp -o first_chars.o -std=c++14 -Wall 
mv first_chars.o ./build
g++ -c src/act_expr_parser.cpp -o act_expr_parser.o -std=c++14 -Wall 
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
 }
 ^
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘kind’
src/act_expr_parser.cpp:611:1: error: invalid initial value for member ‘arg’
Makefile:21: ошибка выполнения рецепта для цели «act_expr_parser.o»
make: *** [act_expr_parser.o] Ошибка 1

Attachment: Makefile
Description: Binary data

Reply via email to