Thank you ,stevieb and tye. As your suggestions, use multi_param() or scalar param() fix it, there's no warning printed. I would raise a bug report at CPAN, and suggest to modify the example code which makes the reader confused(Since the example returns list context, it should not use 'param()').