Files
mercury/tests/invalid/bad_foreign_export_enum.err_exp
Zoltan Somogyi a19a5f0267 Delete the Erlang backend from the compiler.
compiler/elds.m:
compiler/elds_to_erlang.m:
compiler/erl_backend.m:
compiler/erl_call_gen.m:
compiler/erl_code_gen.m:
compiler/erl_code_util.m:
compiler/erl_rtti.m:
compiler/erl_unify_gen.m:
compiler/erlang_rtti.m:
compiler/mercury_compile_erl_back_end.m:
    Delete these modules, which together constitute the Erlang backend.

compiler/notes/compiler_design.html:
    Delete references to the deleted modules.

compiler/parse_tree_out_type_repn.m:
    Update the format we use to represent the sets of foreign_type and
    foreign_enum declarations for a type as part of its item_type_repn_info,
    now that Erlang is no longer a target language.

compiler/parse_type_repn.m:
    Accept both the updated version of the item_type_repn_info and the
    immediately previous version, since the installed compiler will
    initially generate that previous version. However, stop accepting
    an even older version that we stopped generating several months ago.

compiler/parse_pragma_foreign.m:
    When the compiler finds a reference to Erlang as a foreign language,
    add a message about support for Erlang being discontinued to the error
    message.

    Make the code parsing foreign_decls handle the term containing
    the foreign language the same way as the codes parsing foreign
    codes, procs, types and enums.

    Add a mechanism to help parse_mutable.m to do the same.

compiler/parse_mutable.m:
    When the compiler finds a reference to Erlang as a foreign language,
    print an error message about support for Erlang being discontinued.

compiler/compute_grade.m:
    When the compiler finds a reference to Erlang as a grade component,
    print an informational message about support for Erlang being discontinued.

compiler/pickle.m:
compiler/make.build.m:
    Delete Erlang foreign procs and types.

compiler/add_foreign_enum.m:
compiler/add_mutable_aux_preds.m:
compiler/add_pred.m:
compiler/add_solver.m:
compiler/add_type.m:
compiler/check_libgrades.m:
compiler/check_parse_tree_type_defns.m:
compiler/code_gen.m:
compiler/compile_target_code.m:
compiler/compute_grade.m:
compiler/const_struct.m:
compiler/convert_parse_tree.m:
compiler/dead_proc_elim.m:
compiler/decide_type_repn.m:
compiler/deps_map.m:
compiler/du_type_layout.m:
compiler/export.m:
compiler/foreign.m:
compiler/globals.m:
compiler/granularity.m:
compiler/handle_options.m:
compiler/hlds_code_util.m:
compiler/hlds_data.m:
compiler/hlds_module.m:
compiler/inlining.m:
compiler/int_emu.m:
compiler/intermod.m:
compiler/item_util.m:
compiler/lambda.m:
compiler/lco.m:
compiler/llds_out_file.m:
compiler/make.dependencies.m:
compiler/make.m:
compiler/make.module_dep_file.m:
compiler/make.module_target.m:
compiler/make.program_target.m:
compiler/make.util.m:
compiler/make_hlds_separate_items.m:
compiler/make_hlds_warn.m:
compiler/mercury_compile_llds_back_end.m:
compiler/mercury_compile_main.m:
compiler/mercury_compile_middle_passes.m:
compiler/mercury_compile_mlds_back_end.m:
compiler/ml_code_util.m:
compiler/ml_foreign_proc_gen.m:
compiler/ml_target_util.m:
compiler/ml_top_gen.m:
compiler/mlds.m:
compiler/mlds_dump.m:
compiler/mlds_to_c_export.m:
compiler/mlds_to_c_file.m:
compiler/mlds_to_cs_data.m:
compiler/mlds_to_cs_export.m:
compiler/mlds_to_cs_file.m:
compiler/mlds_to_cs_type.m:
compiler/mlds_to_java_export.m:
compiler/mlds_to_java_file.m:
compiler/mlds_to_java_type.m:
compiler/module_imports.m:
compiler/parse_pragma_foreign.m:
compiler/parse_tree_out.m:
compiler/polymorphism.m:
compiler/pragma_c_gen.m:
compiler/prog_data.m:
compiler/prog_data_foreign.m:
compiler/prog_foreign.m:
compiler/prog_item.m:
compiler/simplify_goal_scope.m:
compiler/special_pred.m:
compiler/string_encoding.m:
compiler/top_level.m:
compiler/uint_emu.m:
compiler/write_deps_file.m:
    Remove references to Erlang as a backend or as a target language.

tests/invalid/bad_foreign_code.{m,err_exp}:
tests/invalid/bad_foreign_decl.{m,err_exp}:
tests/invalid/bad_foreign_enum.{m,err_exp}:
tests/invalid/bad_foreign_export.{m,err_exp}:
tests/invalid/bad_foreign_export_enum.{m,err_exp}:
tests/invalid/bad_foreign_import_module.{m,err_exp}:
tests/invalid/bad_foreign_proc.{m,err_exp}:
tests/invalid/bad_foreign_type.{m,err_exp}:
    Add a test for Erlang as an invalid foreign language. Expect both the
    new error message for this new error, and the updated list of now-valid
    foreign languages on all errors.
2020-10-29 13:24:49 +11:00

37 lines
2.3 KiB
Plaintext

bad_foreign_export_enum.m:017: Error: a `:- pragma foreign_export_enum'
bad_foreign_export_enum.m:017: declaration must have two, three or four
bad_foreign_export_enum.m:017: arguments.
bad_foreign_export_enum.m:021: In the first argument of
bad_foreign_export_enum.m:021: `:- pragma foreign_export_enum' declaration:
bad_foreign_export_enum.m:021: error: expected the name of a foreign
bad_foreign_export_enum.m:021: language, got `"InvalidLanguage"'.
bad_foreign_export_enum.m:021: The valid languages are c, C, csharp, C#, java
bad_foreign_export_enum.m:021: and Java.
bad_foreign_export_enum.m:025: In the second argument of
bad_foreign_export_enum.m:025: `:- pragma foreign_export_enum' declaration:
bad_foreign_export_enum.m:025: error: expected `type_name/type_arity', got
bad_foreign_export_enum.m:025: `fruit'.
bad_foreign_export_enum.m:028: In the first argument of
bad_foreign_export_enum.m:028: `:- pragma foreign_export_enum' declaration:
bad_foreign_export_enum.m:028: error: expected the name of a foreign
bad_foreign_export_enum.m:028: language, got `"InvalidLanguage"'.
bad_foreign_export_enum.m:028: The valid languages are c, C, csharp, C#, java
bad_foreign_export_enum.m:028: and Java.
bad_foreign_export_enum.m:029: In the second argument of
bad_foreign_export_enum.m:029: `:- pragma foreign_export_enum' declaration:
bad_foreign_export_enum.m:029: error: expected `type_name/type_arity', got
bad_foreign_export_enum.m:029: `fruit'.
bad_foreign_export_enum.m:030: In the third argument of
bad_foreign_export_enum.m:030: `:- pragma foreign_export_enum' declaration:
bad_foreign_export_enum.m:030: error: expected a list of attributes, got
bad_foreign_export_enum.m:030: `1234'.
bad_foreign_export_enum.m:031: Error: expected a list of mapping elements, got
bad_foreign_export_enum.m:031: `5678'.
bad_foreign_export_enum.m:034: In the first argument of
bad_foreign_export_enum.m:034: `:- pragma foreign_export_enum' declaration:
bad_foreign_export_enum.m:034: error: expected the name of a foreign
bad_foreign_export_enum.m:034: language, got `erlang'.
bad_foreign_export_enum.m:034: The valid languages are c, C, csharp, C#, java
bad_foreign_export_enum.m:034: and Java.
bad_foreign_export_enum.m:034: Support for Erlang has been discontinued.