#! /bin/bash
#
# List "TODO" and "XXX" items in the given files, or throughout the source
# code.

set -e -u -o pipefail

# TODO: Make location-independent?
find_source() {
    echo configure.ac
    find . -name \*.cxx -o -name \*.hxx | sed -e 's|^\./||' | sort
    for f in $(ls tools)
    do
        echo tools/$f
    done
}


FILES=${*:-$(find_source)}


# Search for "$1:" in files $2.
# (This function adds the colon.  That way, the search statement itself won't
# show up in the search.)
search_for() {
    grep $1: $2
}


search_for XXX "$FILES" || true
search_for TODO "$FILES" || true
