In reply to nipradee:
Your module declaration is implicitly the same as
module test_tb
(
input wire logic clk,rst,
input wire logic[3:0] A,B,
output var logic[3:0] C
);
C is a variable, and clocking block output drives are considered procedural assignments.
You are allowed to have multiple procedural assignments to a variable.