1include(`quote.m4')dnl
2divert(`-1')
3# foreach(x, (item_1, item_2, ..., item_n), stmt)
4#   parenthesized list, improved version
5define(`foreach', `pushdef(`$1')_$0(`$1',
6  (dquote(dquote_elt$2)), `$3')popdef(`$1')')
7define(`_arg1', `$1')
8define(`_foreach', `ifelse(`$2', `(`')', `',
9  `define(`$1', _arg1$2)$3`'$0(`$1', (dquote(shift$2)), `$3')')')
10divert`'dnl
11