Оба ответа верны.Если у задачи или функции Verilog было несколько операторов, они также должны были иметь операторы начала и конца.Начиная с SystemVerilog-2005, мы сняли требование помещать начало в нечто, что уже имело начало.Большинство из нас в комитете считали глупым требовать начала внутри чего-то, что уже должно было иметь конечную функцию / конечную задачу.Я имею в виду давай!Не думаете ли вы, что компилятор может понять, что когда он получил инструкцию endtask / endfunction, он был в конце задачи или функции ??Удаление начала и конца из задач и функций избавляет от неожиданного количества бесполезного кода.Наберите еще одно очко для SystemVerilog!
С уважением - Клифф Каммингс - Verilog & SystemVerilog Guru