gcc/libiberty/testsuite/regress-demangle
H.J. Lu d74697b84d cp-demangle.c (cp_demangle_type): Do not protect with IN_LIBGCC2.
2002-02-02  H.J. Lu  (hjl@gnu.org)

	* cp-demangle.c (cp_demangle_type): Do not protect with
	IN_LIBGCC2.
	(cplus_demangle_v3_all): New.
	(cplus_demangle_v3): Call cplus_demangle_v3_all.
	(cplus_demangle_v3_type): Call cplus_demangle_v3_all.

	* cplus-dem.c (cplus_demangle_v3_p): New function pointer.
	Initialized to cplus_demangle_v3.
	(cplus_demangle_with_style): Call cplus_demangle_v3_p instead
	of cplus_demangle_v3.
	(main): Set cplus_demangle_v3_p to cplus_demangle_v3_type for
	command line symbol.

	* testsuite/regress-demangle: Pass the mangled name at the
	command line.

From-SVN: r49456
2002-02-02 20:00:36 -08:00

31 lines
587 B
Bash
Executable File

#! /bin/sh
# Run a regression test for the demangler.
# Usage: regress-demangle TEST-FILE
failures=0
count=0
sed -e '/^#/ d' "$1" | (
while read type; do
read mangled
read demangled
x="`./test-filter $type $mangled`"
count=`expr $count + 1`
if test "x$x" != "x$demangled"; then
failures=`expr $failures + 1`
echo "FAIL: $type $mangled"
echo " result: $x"
echo " expected: $demangled"
fi
done
if test $failures -eq 0; then
echo "All $count tests passed"
else
echo "$failures of $count tests failed"
fi
test $failures -eq 0
)