From f4cff3a20778a1b506adf23128fabadab4bd1101 Mon Sep 17 00:00:00 2001 From: Luke Imhoff Date: Fri, 20 Oct 2017 21:44:06 -0500 Subject: [PATCH 1/2] Failing regression test for #859 --- .../beam/decompiler/erl_syntax.beam | Bin 0 -> 119916 bytes .../elixir_lang/beam/decompiler/erl_syntax.ex | 1121 +++++++++++++++++ .../org/elixir_lang/beam/DecompilerTest.java | 4 + 3 files changed, 1125 insertions(+) create mode 100644 testData/org/elixir_lang/beam/decompiler/erl_syntax.beam create mode 100644 testData/org/elixir_lang/beam/decompiler/erl_syntax.ex diff --git a/testData/org/elixir_lang/beam/decompiler/erl_syntax.beam b/testData/org/elixir_lang/beam/decompiler/erl_syntax.beam new file mode 100644 index 0000000000000000000000000000000000000000..8742731feeebe07c772edcbf40318ffca952b70c GIT binary patch literal 119916 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�e7Q}toLDOqvmC^DWCfv~;kgz};&NHyJvPlf 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 literal 0 HcmV?d00001 diff --git a/testData/org/elixir_lang/beam/decompiler/erl_syntax.ex b/testData/org/elixir_lang/beam/decompiler/erl_syntax.ex new file mode 100644 index 000000000..57e15ccd9 --- /dev/null +++ b/testData/org/elixir_lang/beam/decompiler/erl_syntax.ex @@ -0,0 +1,1121 @@ +# Source code recreated from a .beam file by IntelliJ Elixir +defmodule :erl_syntax do + + # Functions + + def abstract(p0) do + # body not decompiled + end + + def add_ann(p0, p1) do + # body not decompiled + end + + def add_postcomments(p0, p1) do + # body not decompiled + end + + def add_precomments(p0, p1) do + # body not decompiled + end + + def annotated_type(p0, p1) do + # body not decompiled + end + + def annotated_type_body(p0) do + # body not decompiled + end + + def annotated_type_name(p0) do + # body not decompiled + end + + def application(p0, p1) do + # body not decompiled + end + + def application(p0, p1, p2) do + # body not decompiled + end + + def application_arguments(p0) do + # body not decompiled + end + + def application_operator(p0) do + # body not decompiled + end + + def arity_qualifier(p0, p1) do + # body not decompiled + end + + def arity_qualifier_argument(p0) do + # body not decompiled + end + + def arity_qualifier_body(p0) do + # body not decompiled + end + + def atom(p0) do + # body not decompiled + end + + def atom_literal(p0) do + # body not decompiled + end + + def atom_literal(p0, p1) do + # body not decompiled + end + + def atom_name(p0) do + # body not decompiled + end + + def atom_value(p0) do + # body not decompiled + end + + def attribute(p0) do + # body not decompiled + end + + def attribute(p0, p1) do + # body not decompiled + end + + def attribute_arguments(p0) do + # body not decompiled + end + + def attribute_name(p0) do + # body not decompiled + end + + def binary(p0) do + # body not decompiled + end + + def binary_comp(p0, p1) do + # body not decompiled + end + + def binary_comp_body(p0) do + # body not decompiled + end + + def binary_comp_template(p0) do + # body not decompiled + end + + def binary_field(p0) do + # body not decompiled + end + + def binary_field(p0, p1) do + # body not decompiled + end + + def binary_field(p0, p1, p2) do + # body not decompiled + end + + def binary_field_body(p0) do + # body not decompiled + end + + def binary_field_size(p0) do + # body not decompiled + end + + def binary_field_types(p0) do + # body not decompiled + end + + def binary_fields(p0) do + # body not decompiled + end + + def binary_generator(p0, p1) do + # body not decompiled + end + + def binary_generator_body(p0) do + # body not decompiled + end + + def binary_generator_pattern(p0) do + # body not decompiled + end + + def bitstring_type(p0, p1) do + # body not decompiled + end + + def bitstring_type_m(p0) do + # body not decompiled + end + + def bitstring_type_n(p0) do + # body not decompiled + end + + def block_expr(p0) do + # body not decompiled + end + + def block_expr_body(p0) do + # body not decompiled + end + + def case_expr(p0, p1) do + # body not decompiled + end + + def case_expr_argument(p0) do + # body not decompiled + end + + def case_expr_clauses(p0) do + # body not decompiled + end + + def catch_expr(p0) do + # body not decompiled + end + + def catch_expr_body(p0) do + # body not decompiled + end + + def char(p0) do + # body not decompiled + end + + def char_literal(p0) do + # body not decompiled + end + + def char_literal(p0, p1) do + # body not decompiled + end + + def char_value(p0) do + # body not decompiled + end + + def class_qualifier(p0, p1) do + # body not decompiled + end + + def class_qualifier_argument(p0) do + # body not decompiled + end + + def class_qualifier_body(p0) do + # body not decompiled + end + + def clause(p0, p1) do + # body not decompiled + end + + def clause(p0, p1, p2) do + # body not decompiled + end + + def clause_body(p0) do + # body not decompiled + end + + def clause_guard(p0) do + # body not decompiled + end + + def clause_patterns(p0) do + # body not decompiled + end + + def comment(p0) do + # body not decompiled + end + + def comment(p0, p1) do + # body not decompiled + end + + def comment_padding(p0) do + # body not decompiled + end + + def comment_text(p0) do + # body not decompiled + end + + def compact_list(p0) do + # body not decompiled + end + + def concrete(p0) do + # body not decompiled + end + + def cond_expr(p0) do + # body not decompiled + end + + def cond_expr_clauses(p0) do + # body not decompiled + end + + def conjunction(p0) do + # body not decompiled + end + + def conjunction_body(p0) do + # body not decompiled + end + + def cons(p0, p1) do + # body not decompiled + end + + def constrained_function_type(p0, p1) do + # body not decompiled + end + + def constrained_function_type_argument(p0) do + # body not decompiled + end + + def constrained_function_type_body(p0) do + # body not decompiled + end + + def constraint(p0, p1) do + # body not decompiled + end + + def constraint_argument(p0) do + # body not decompiled + end + + def constraint_body(p0) do + # body not decompiled + end + + def copy_ann(p0, p1) do + # body not decompiled + end + + def copy_attrs(p0, p1) do + # body not decompiled + end + + def copy_comments(p0, p1) do + # body not decompiled + end + + def copy_pos(p0, p1) do + # body not decompiled + end + + def data(p0) do + # body not decompiled + end + + def disjunction(p0) do + # body not decompiled + end + + def disjunction_body(p0) do + # body not decompiled + end + + def eof_marker() do + # body not decompiled + end + + def error_marker(p0) do + # body not decompiled + end + + def error_marker_info(p0) do + # body not decompiled + end + + def flatten_form_list(p0) do + # body not decompiled + end + + def float(p0) do + # body not decompiled + end + + def float_literal(p0) do + # body not decompiled + end + + def float_value(p0) do + # body not decompiled + end + + def form_list(p0) do + # body not decompiled + end + + def form_list_elements(p0) do + # body not decompiled + end + + def fun_expr(p0) do + # body not decompiled + end + + def fun_expr_arity(p0) do + # body not decompiled + end + + def fun_expr_clauses(p0) do + # body not decompiled + end + + def fun_type() do + # body not decompiled + end + + def function(p0, p1) do + # body not decompiled + end + + def function_arity(p0) do + # body not decompiled + end + + def function_clauses(p0) do + # body not decompiled + end + + def function_name(p0) do + # body not decompiled + end + + def function_type(p0) do + # body not decompiled + end + + def function_type(p0, p1) do + # body not decompiled + end + + def function_type_arguments(p0) do + # body not decompiled + end + + def function_type_return(p0) do + # body not decompiled + end + + def generator(p0, p1) do + # body not decompiled + end + + def generator_body(p0) do + # body not decompiled + end + + def generator_pattern(p0) do + # body not decompiled + end + + def get_ann(p0) do + # body not decompiled + end + + def get_attrs(p0) do + # body not decompiled + end + + def get_pos(p0) do + # body not decompiled + end + + def get_postcomments(p0) do + # body not decompiled + end + + def get_precomments(p0) do + # body not decompiled + end + + def has_comments(p0) do + # body not decompiled + end + + def if_expr(p0) do + # body not decompiled + end + + def if_expr_clauses(p0) do + # body not decompiled + end + + def implicit_fun(p0) do + # body not decompiled + end + + def implicit_fun(p0, p1) do + # body not decompiled + end + + def implicit_fun(p0, p1, p2) do + # body not decompiled + end + + def implicit_fun_name(p0) do + # body not decompiled + end + + def infix_expr(p0, p1, p2) do + # body not decompiled + end + + def infix_expr_left(p0) do + # body not decompiled + end + + def infix_expr_operator(p0) do + # body not decompiled + end + + def infix_expr_right(p0) do + # body not decompiled + end + + def integer(p0) do + # body not decompiled + end + + def integer_literal(p0) do + # body not decompiled + end + + def integer_range_type(p0, p1) do + # body not decompiled + end + + def integer_range_type_high(p0) do + # body not decompiled + end + + def integer_range_type_low(p0) do + # body not decompiled + end + + def integer_value(p0) do + # body not decompiled + end + + def is_atom(p0, p1) do + # body not decompiled + end + + def is_char(p0, p1) do + # body not decompiled + end + + def is_form(p0) do + # body not decompiled + end + + def is_integer(p0, p1) do + # body not decompiled + end + + def is_leaf(p0) do + # body not decompiled + end + + def is_list_skeleton(p0) do + # body not decompiled + end + + def is_literal(p0) do + # body not decompiled + end + + def is_proper_list(p0) do + # body not decompiled + end + + def is_string(p0, p1) do + # body not decompiled + end + + def is_tree(p0) do + # body not decompiled + end + + def join_comments(p0, p1) do + # body not decompiled + end + + def list(p0) do + # body not decompiled + end + + def list(p0, p1) do + # body not decompiled + end + + def list_comp(p0, p1) do + # body not decompiled + end + + def list_comp_body(p0) do + # body not decompiled + end + + def list_comp_template(p0) do + # body not decompiled + end + + def list_elements(p0) do + # body not decompiled + end + + def list_head(p0) do + # body not decompiled + end + + def list_length(p0) do + # body not decompiled + end + + def list_prefix(p0) do + # body not decompiled + end + + def list_suffix(p0) do + # body not decompiled + end + + def list_tail(p0) do + # body not decompiled + end + + def macro(p0) do + # body not decompiled + end + + def macro(p0, p1) do + # body not decompiled + end + + def macro_arguments(p0) do + # body not decompiled + end + + def macro_name(p0) do + # body not decompiled + end + + def make_tree(p0, p1) do + # body not decompiled + end + + def map_expr(p0) do + # body not decompiled + end + + def map_expr(p0, p1) do + # body not decompiled + end + + def map_expr_argument(p0) do + # body not decompiled + end + + def map_expr_fields(p0) do + # body not decompiled + end + + def map_field_assoc(p0, p1) do + # body not decompiled + end + + def map_field_assoc_name(p0) do + # body not decompiled + end + + def map_field_assoc_value(p0) do + # body not decompiled + end + + def map_field_exact(p0, p1) do + # body not decompiled + end + + def map_field_exact_name(p0) do + # body not decompiled + end + + def map_field_exact_value(p0) do + # body not decompiled + end + + def map_type() do + # body not decompiled + end + + def map_type(p0) do + # body not decompiled + end + + def map_type_assoc(p0, p1) do + # body not decompiled + end + + def map_type_assoc_name(p0) do + # body not decompiled + end + + def map_type_assoc_value(p0) do + # body not decompiled + end + + def map_type_exact(p0, p1) do + # body not decompiled + end + + def map_type_exact_name(p0) do + # body not decompiled + end + + def map_type_exact_value(p0) do + # body not decompiled + end + + def map_type_fields(p0) do + # body not decompiled + end + + def match_expr(p0, p1) do + # body not decompiled + end + + def match_expr_body(p0) do + # body not decompiled + end + + def match_expr_pattern(p0) do + # body not decompiled + end + + def meta(p0) do + # body not decompiled + end + + def module_info() do + # body not decompiled + end + + def module_info(p0) do + # body not decompiled + end + + def module_qualifier(p0, p1) do + # body not decompiled + end + + def module_qualifier_argument(p0) do + # body not decompiled + end + + def module_qualifier_body(p0) do + # body not decompiled + end + + def named_fun_expr(p0, p1) do + # body not decompiled + end + + def named_fun_expr_arity(p0) do + # body not decompiled + end + + def named_fun_expr_clauses(p0) do + # body not decompiled + end + + def named_fun_expr_name(p0) do + # body not decompiled + end + + def unquote(:nil)() do + # body not decompiled + end + + def normalize_list(p0) do + # body not decompiled + end + + def operator(p0) do + # body not decompiled + end + + def operator_literal(p0) do + # body not decompiled + end + + def operator_name(p0) do + # body not decompiled + end + + def parentheses(p0) do + # body not decompiled + end + + def parentheses_body(p0) do + # body not decompiled + end + + def prefix_expr(p0, p1) do + # body not decompiled + end + + def prefix_expr_argument(p0) do + # body not decompiled + end + + def prefix_expr_operator(p0) do + # body not decompiled + end + + def receive_expr(p0) do + # body not decompiled + end + + def receive_expr(p0, p1, p2) do + # body not decompiled + end + + def receive_expr_action(p0) do + # body not decompiled + end + + def receive_expr_clauses(p0) do + # body not decompiled + end + + def receive_expr_timeout(p0) do + # body not decompiled + end + + def record_access(p0, p1, p2) do + # body not decompiled + end + + def record_access_argument(p0) do + # body not decompiled + end + + def record_access_field(p0) do + # body not decompiled + end + + def record_access_type(p0) do + # body not decompiled + end + + def record_expr(p0, p1) do + # body not decompiled + end + + def record_expr(p0, p1, p2) do + # body not decompiled + end + + def record_expr_argument(p0) do + # body not decompiled + end + + def record_expr_fields(p0) do + # body not decompiled + end + + def record_expr_type(p0) do + # body not decompiled + end + + def record_field(p0) do + # body not decompiled + end + + def record_field(p0, p1) do + # body not decompiled + end + + def record_field_name(p0) do + # body not decompiled + end + + def record_field_value(p0) do + # body not decompiled + end + + def record_index_expr(p0, p1) do + # body not decompiled + end + + def record_index_expr_field(p0) do + # body not decompiled + end + + def record_index_expr_type(p0) do + # body not decompiled + end + + def record_type(p0, p1) do + # body not decompiled + end + + def record_type_field(p0, p1) do + # body not decompiled + end + + def record_type_field_name(p0) do + # body not decompiled + end + + def record_type_field_type(p0) do + # body not decompiled + end + + def record_type_fields(p0) do + # body not decompiled + end + + def record_type_name(p0) do + # body not decompiled + end + + def remove_comments(p0) do + # body not decompiled + end + + def revert(p0) do + # body not decompiled + end + + def revert_forms(p0) do + # body not decompiled + end + + def set_ann(p0, p1) do + # body not decompiled + end + + def set_attrs(p0, p1) do + # body not decompiled + end + + def set_pos(p0, p1) do + # body not decompiled + end + + def set_postcomments(p0, p1) do + # body not decompiled + end + + def set_precomments(p0, p1) do + # body not decompiled + end + + def size_qualifier(p0, p1) do + # body not decompiled + end + + def size_qualifier_argument(p0) do + # body not decompiled + end + + def size_qualifier_body(p0) do + # body not decompiled + end + + def string(p0) do + # body not decompiled + end + + def string_literal(p0) do + # body not decompiled + end + + def string_literal(p0, p1) do + # body not decompiled + end + + def string_value(p0) do + # body not decompiled + end + + def subtrees(p0) do + # body not decompiled + end + + def text(p0) do + # body not decompiled + end + + def text_string(p0) do + # body not decompiled + end + + def tree(p0) do + # body not decompiled + end + + def tree(p0, p1) do + # body not decompiled + end + + def try_after_expr(p0, p1) do + # body not decompiled + end + + def try_expr(p0, p1) do + # body not decompiled + end + + def try_expr(p0, p1, p2) do + # body not decompiled + end + + def try_expr(p0, p1, p2, p3) do + # body not decompiled + end + + def try_expr_after(p0) do + # body not decompiled + end + + def try_expr_body(p0) do + # body not decompiled + end + + def try_expr_clauses(p0) do + # body not decompiled + end + + def try_expr_handlers(p0) do + # body not decompiled + end + + def tuple(p0) do + # body not decompiled + end + + def tuple_elements(p0) do + # body not decompiled + end + + def tuple_size(p0) do + # body not decompiled + end + + def tuple_type() do + # body not decompiled + end + + def tuple_type(p0) do + # body not decompiled + end + + def tuple_type_elements(p0) do + # body not decompiled + end + + def type(p0) do + # body not decompiled + end + + def type_application(p0, p1) do + # body not decompiled + end + + def type_application(p0, p1, p2) do + # body not decompiled + end + + def type_application_arguments(p0) do + # body not decompiled + end + + def type_application_name(p0) do + # body not decompiled + end + + def type_union(p0) do + # body not decompiled + end + + def type_union_types(p0) do + # body not decompiled + end + + def typed_record_field(p0, p1) do + # body not decompiled + end + + def typed_record_field_body(p0) do + # body not decompiled + end + + def typed_record_field_type(p0) do + # body not decompiled + end + + def underscore() do + # body not decompiled + end + + def update_tree(p0, p1) do + # body not decompiled + end + + def user_type_application(p0, p1) do + # body not decompiled + end + + def user_type_application_arguments(p0) do + # body not decompiled + end + + def user_type_application_name(p0) do + # body not decompiled + end + + def variable(p0) do + # body not decompiled + end + + def variable_literal(p0) do + # body not decompiled + end + + def variable_name(p0) do + # body not decompiled + end + + def warning_marker(p0) do + # body not decompiled + end + + def warning_marker_info(p0) do + # body not decompiled + end +end diff --git a/tests/org/elixir_lang/beam/DecompilerTest.java b/tests/org/elixir_lang/beam/DecompilerTest.java index a85c7fb06..cb28ddc61 100644 --- a/tests/org/elixir_lang/beam/DecompilerTest.java +++ b/tests/org/elixir_lang/beam/DecompilerTest.java @@ -133,6 +133,10 @@ public void testIssue833() throws IOException, OtpErlangDecodeException { assertDecompiled("docgen_xmerl_xml_cb"); } + public void testIssue859() throws IOException, OtpErlangDecodeException { + assertDecompiled("erl_syntax"); + } + public void testIssue860() throws IOException, OtpErlangDecodeException { assertDecompiled("OTP-PUB-KEY"); } From 41e8fc783f7de9abc3c95ea40f7632b00e556fc6 Mon Sep 17 00:00:00 2001 From: Luke Imhoff Date: Fri, 20 Oct 2017 21:46:43 -0500 Subject: [PATCH 2/2] Add `nil` to Unquote SPECIAL_FORM_NAME_SET --- src/org/elixir_lang/beam/decompiler/Unquoted.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/org/elixir_lang/beam/decompiler/Unquoted.java b/src/org/elixir_lang/beam/decompiler/Unquoted.java index a01ced004..c678be1f5 100644 --- a/src/org/elixir_lang/beam/decompiler/Unquoted.java +++ b/src/org/elixir_lang/beam/decompiler/Unquoted.java @@ -26,6 +26,7 @@ public class Unquoted extends MacroNameArity { SPECIAL_FORM_NAME_SET.add("<<>>"); SPECIAL_FORM_NAME_SET.add("do"); SPECIAL_FORM_NAME_SET.add("fn"); + SPECIAL_FORM_NAME_SET.add("nil"); SPECIAL_FORM_NAME_SET.add("unquote"); SPECIAL_FORM_NAME_SET.add("unquote_splicing"); SPECIAL_FORM_NAME_SET.add("{}");