Posted to tcl by auriocus at Sat Apr 08 10:01:45 GMT 2017view raw

  1. package require fileutil
  2.  
  3. proc deansi fn {
  4. set cont [fileutil::cat $fn]
  5. set r [regsub -all {_ANSI_ARGS_\s*?\((.*?)\)\s*?;} $cont {\1;}]
  6. set r [regsub -all {TCL_VARARGS\s*?\((.*?),(.*?)\)} $r {(\1 \2, ...)}]
  7. set r [regsub -all {TCL_VARARGS_DEF\s*?\((.*?),(.*?)\)} $r {(\1 \2, ...)}]
  8. set r [regsub -all {TCL_VARARGS_START} $r {EXP_VARARGS_START}]
  9. set r [regsub -all {\ypanic\y} $r {Tcl_Panic}]
  10. ::fileutil::writeFile $fn $r
  11. }
  12.  
  13.  
  14. proc deansi_dir dir {
  15. foreach fn [glob -nocomplain $dir/*.c $dir/*.h] {
  16. deansi $fn
  17. }
  18. }
  19.  
  20.