CVSROOT: /sources/m4 Module name: m4 Changes by: Eric Blake <ericb> 06/09/15 03:37:54
Index: tests/options.at =================================================================== RCS file: /sources/m4/m4/tests/options.at,v retrieving revision 1.7 retrieving revision 1.8 diff -u -b -r1.7 -r1.8 --- tests/options.at 5 Sep 2006 23:16:40 -0000 1.7 +++ tests/options.at 15 Sep 2006 03:37:54 -0000 1.8 @@ -230,3 +230,47 @@ ]) AT_CLEANUP + + +## ----- ## +## safer ## +## ----- ## + +AT_SETUP([--safer]) + +dnl with --safer, debugfile is crippled, but -o is not +AT_DATA([[in]], +[[define(`foo', `1')foo +debugfile(`trace2') +define(`foo', `2')foo +]]) + +AT_CHECK_M4([--safer -o trace1 -t foo in], [1], +[[1 + +2 +]], [[m4:in:2: debugfile: disabled by --safer +]]) + +AT_CHECK([test -f trace2], [1]) +AT_CHECK([cat trace1], [0], +[[m4trace: -1- foo -> `1' +m4trace: -1- foo -> `2' +]]) + +dnl make sure builtin cannot bypass --safer, and that maketemp does not +dnl create file +AT_DATA([[in]], [[builtin(`maketemp', `./fooXXXXXX') +]]) + +AT_CHECK([echo foo*], [0], [foo* +]) + +AT_CHECK_M4([--safer in], [1], [[ +]], [[m4:in:1: maketemp: disabled by --safer +]]) + +AT_CHECK([echo foo*], [0], [foo* +]) + +AT_CLEANUP
