#compdef valgrind 
#Generated by
#   simple2long.xsl
#   args.xsl
#   Post-handedits
#   For details see:
#       http://www.geocities.com/f_rosencrantz/xml_completion.htm
#
#   This is for valgrind version: 1.0.0
#   Valgrind URL: http://developer.kde.org/~sewardj/

local context state line
typeset -A opt_args
  _arguments   \
    '--help[show this message]' \
    '--version[show version]' \
    '(--quiet)-q[run silently; only print error msgs]' \
    '(-q)--quiet[run silently; only print error msgs]' \
    '(--verbose)-v[be more verbose, incl counts of errors]' \
    '(-v)--verbose[be more verbose, incl counts of errors]' \
    '--gdb-attach=-:start GDB when errors detected? [no]:(no yes)' \
    '--demangle=-:automatically demangle C++ names? [yes]:(no yes)' \
    '--num-callers=-:show <num> callers in stack traces [4]:' \
    '--error-limit=-:stop showing new errors if too many? [yes]:(no yes)' \
    '--partial-loads-ok=-:too hard to explain here; see manual [yes]:(no yes)' \
    '--leak-check=-:search for memory leaks at exit? [no]:(no yes)' \
    '--leak-resolution=-:amount of bt merging in leak check [low]:(low med high)' \
    '--show-reachable=-:show reachable blocks in leak check? [no]:(no yes)' \
    '--sloppy-malloc=-:round malloc sizes to next word? [no]:(no yes)' \
    '--alignment=-:set minimum alignment of allocations [4]:' \
    '--trace-children=-:Valgrind-ise child processes? [no]:(no yes)' \
    '--logfile-fd=-:file descriptor for messages [2=stderr]:_file_descriptors' \
    '--freelist-vol=-:volume of freed blocks queue [1000000]:' \
    '--workaround-gcc296-bugs=-:self explanatory [no]:(no yes)' \
    '--suppressions=-:suppress errors described in suppressions file <filename>:_files' \
    '--check-addrVs=-:experimental lighterweight checking? [yes]:(no yes)' \
    '--cachesim=-:do cache profiling? [no]:(no yes)' \
    '--I1=-:set I1 cache manually(size,assoc,line_size):' \
    '--D1=-:set D1 cache manually(size,assoc,line_size):' \
    '--L2=-:set L2 cache manually(size,assoc,line_size):' \
    '--weird-hacks=-:weird hacks (comma separated)[no hacks selected]:(ioctl-VTIME truncate-writes)' \
    '--sanity-level=-:level of sanity checking to do [1]:' \
    '--single-step=-:translate each instr separately? [no]:(no yes)' \
    '--optimise=-:improve intermediate code? [yes]:(no yes)' \
    '--instrument=-:actually do memory checks? [yes]:(no yes)' \
    '--cleanup=-:improve after instrumentation? [yes]:(no yes)' \
    '--smc-check=-:check writes for s-m-c? [some]:(none some all)' \
    '--trace-syscalls=-:show all system calls? [no]:(no yes)' \
    '--trace-signals=-:show signal handling details? [no]:(no yes)' \
    '--trace-symtab=-:show symbol table details? [no]:(no yes)' \
    '--trace-malloc=-:show client malloc details? [no]:(no yes)' \
    '--trace-sched=-:show thread scheduler details? [no]:(no yes)' \
    '--trace-pthread=-:show pthread event details? [none]:(none some all)' \
    '--stop-after=-:switch to real CPU after executing <number> basic blocks [infinity]:' \
    "--dump-error=-:show translation for basic block associated with <number>'th error context [0=don't show any]:" \
    '1:command name:_command_names -e' \
    '*::args :_normal'  && return 0
