diff --git a/src/compiler/build_tables/build_tables.cc b/src/compiler/build_tables/build_tables.cc index 5998b2b5..dadc98d5 100644 --- a/src/compiler/build_tables/build_tables.cc +++ b/src/compiler/build_tables/build_tables.cc @@ -27,6 +27,7 @@ namespace tree_sitter { using std::make_shared; using rules::Symbol; using rules::CharacterSet; + using std::make_tuple; namespace build_tables { class TableBuilder { @@ -204,7 +205,7 @@ namespace tree_sitter { const PreparedGrammar &lex_grammar) { TableBuilder builder(grammar, lex_grammar); builder.build(); - return { builder.parse_table, builder.lex_table, builder.conflicts() }; + return make_tuple(builder.parse_table, builder.lex_table, builder.conflicts()); } } } diff --git a/src/compiler/compile.cc b/src/compiler/compile.cc index c9b54824..3549a053 100644 --- a/src/compiler/compile.cc +++ b/src/compiler/compile.cc @@ -9,6 +9,7 @@ namespace tree_sitter { using std::string; using std::vector; using std::get; + using std::make_tuple; tuple, const GrammarError *> compile(const Grammar &grammar, std::string name) { @@ -17,7 +18,8 @@ namespace tree_sitter { const PreparedGrammar &lexical_grammar = get<1>(prepare_grammar_result); const GrammarError *error = get<2>(prepare_grammar_result); - if (error) return { "", vector(), error }; + if (error) + return make_tuple("", vector(), error); auto table_build_result = build_tables::build_tables(syntax_grammar, lexical_grammar); const ParseTable &parse_table = get<0>(table_build_result); @@ -26,6 +28,6 @@ namespace tree_sitter { string code = generate_code::c_code(name, parse_table, lex_table, syntax_grammar, lexical_grammar); - return { code, conflicts, nullptr }; + return make_tuple(code, conflicts, nullptr); } } diff --git a/src/compiler/prepare_grammar/prepare_grammar.cc b/src/compiler/prepare_grammar/prepare_grammar.cc index ef584a53..c66af384 100644 --- a/src/compiler/prepare_grammar/prepare_grammar.cc +++ b/src/compiler/prepare_grammar/prepare_grammar.cc @@ -6,6 +6,7 @@ namespace tree_sitter { using std::tuple; + using std::make_tuple; namespace prepare_grammar { tuple @@ -15,13 +16,13 @@ namespace tree_sitter { const GrammarError *error = result.second; if (error) - return { PreparedGrammar({}, {}), PreparedGrammar({}, {}), error }; + return make_tuple(PreparedGrammar({}, {}), PreparedGrammar({}, {}), error); auto grammars = extract_tokens(grammar); const PreparedGrammar &rule_grammar = expand_repeats(grammars.first); const PreparedGrammar &lex_grammar = grammars.second; - return { rule_grammar, lex_grammar }; + return make_tuple(rule_grammar, lex_grammar, nullptr); } } }