--- /dev/null
+
+long foo(long, long);
+long bar(long*, long);
+long bla(long*);
+
+long muh[] = {3}, kuh[] = {0};
+
+RET(foo(5,1) == 40 && foo(4,0) == 60 && bar(muh, 1) == 2 && bar(muh,0) == 18 && bla(muh) == 5 && bla(kuh) == 0);
+
--- /dev/null
+#!/bin/bash
+
+i=$1
+beispiel=codeb
+PROGRAM=./$beispiel
+
+#LOC=.
+LOC=/usr/ftp/pub/ubvl/test/$beispiel
+
+allow_null_glob_expansion=1
+
+if [ ! -d ~/abgabe/$beispiel ]; then
+ echo "Fehler: Verzeichnis ~/abgabe/$beispiel existiert nicht."
+ exit 1
+else
+ cd ~/abgabe/$beispiel
+ echo 'Teste "make"'
+ make
+fi
+
+if test ! -x $PROGRAM
+then
+ echo "Fehler: Kein Programm $PROGRAM"
+ exit 1
+fi
+let prgnum=0
+#for i in $LOC/*.0 $LOC2/*.0
+if [ -f $i ]; then
+ let prgnum=prgnum+1
+ let errorfound=0
+ echo "==========> Eingabe von $i:"
+ cat $i
+ echo
+ RESFILE=test${beispiel}out$$
+ $PROGRAM <$i >$RESFILE
+ retval=$?
+ echo -n "Übersetzung: "
+ if test $retval -eq 0
+ then
+ echo "Status korrekt"
+ else
+ echo "[Errot] Status=$retval. Erwartet: 0"
+ let errorfound=1
+ fi
+ echo
+ echo "Ausgabe:"
+ if [ -f ~/test/scripts/clr.py ]; then
+ cat $RESFILE | ~/test/scripts/clr.py
+ else
+ cat $RESFILE
+ fi
+ mv -f $RESFILE $RESFILE.s
+ CALLFILE=${i%.*}.call
+ echo
+ if [ ! -f $CALLFILE ]; then
+ echo "Fehler: Datei $CALLFILE existiert nicht, kann Code nicht ausführen..."
+ exit 1
+ else
+ echo "Übersetze und linke das Testprogramm:"
+ if cc -g -I. -DCALL=\"$CALLFILE\" $LOC/testmain.c $LOC/callingconvention.o $RESFILE.s; then
+ echo
+ echo "Rufe folgendes Codefragment auf:"
+ cat $CALLFILE
+ echo
+ gdb ./a.out
+ else
+ echo "[Error] Erzeugter Code konnte nicht assembliert und gelinkt werden."
+ let errorfound=1
+ fi
+ fi
+ rm -f a.out $RESFILE $RESFILE.s
+fi