data/full_repos/permissive/441359809/src/yosys/tests/opt/opt_share_cat_multiuser.v
1: b"%Error: data/full_repos/permissive/441359809/src/yosys/tests/opt/opt_share_cat_multiuser.v:8: syntax error, unexpected ')', expecting '['\n  );\n  ^\n%Error: data/full_repos/permissive/441359809/src/yosys/tests/opt/opt_share_cat_multiuser.v:15: syntax error, unexpected always\n  always @* begin\n  ^~~~~~\n%Error: Exiting due to 2 error(s)\n"
module opt_share_test(
  input [15:0]      a,
  input [15:0]      b,
  input [15:0]      c,
  input [15:0]      d,
  input             sel,
  output reg [47:0] res,
  );

  wire [15:0]       add_res = a+b;
  wire [15:0]       sub_res = a-b;
  wire [31: 0]      cat1 = {add_res, c+d};
  wire [31: 0]      cat2 = {sub_res, c-d};

  always @* begin
    case(sel)
      0: res = {cat1, add_res};
      1: res = {cat2, add_res};
    endcase
  end

endmodule
module opt_share_test(
  input [15:0]      a,
  input [15:0]      b,
  input [15:0]      c,
  input [15:0]      d,
  input             sel,
  output reg [47:0] res,
  );


  wire [15:0]       add_res = a+b;
  wire [15:0]       sub_res = a-b;
  wire [31: 0]      cat1 = {add_res, c+d};
  wire [31: 0]      cat2 = {sub_res, c-d};

  always @* begin
    case(sel)
      0: res = {cat1, add_res};
      1: res = {cat2, add_res};
    endcase
  end

endmodule