Blame tests/function-line-vs-leading-space

Packit 33f14e
#!/bin/sh
Packit 33f14e
# Demonstrate how -F RE behavior changed after diff-2.9.
Packit 33f14e
Packit 33f14e
. "${srcdir=.}/init.sh"; path_prepend_ ../src
Packit 33f14e
Packit 33f14e
cat <<EOF > in || fail_ "failed to create temporary file"
Packit 33f14e
procedure AdaCode is
Packit 33f14e
    procedure Local_Level_1 is
Packit 33f14e
        procedure Local_Level_2 is
Packit 33f14e
            procedure Local_Level_3 is
Packit 33f14e
                procedure Local_Level_4 is
Packit 33f14e
                    procedure Local_Level_5 is
Packit 33f14e
                    begin
Packit 33f14e
                        null;
Packit 33f14e
                        null;
Packit 33f14e
                        null;
Packit 33f14e
                        foo;
Packit 33f14e
                    end;
Packit 33f14e
                begin
Packit 33f14e
                    Local_Level_5;
Packit 33f14e
                end;
Packit 33f14e
            begin
Packit 33f14e
                Local_Level_4;
Packit 33f14e
            end;
Packit 33f14e
        begin
Packit 33f14e
            Local_Level_3;
Packit 33f14e
        end;
Packit 33f14e
    begin
Packit 33f14e
        Local_Level_2;
Packit 33f14e
    end;
Packit 33f14e
begin
Packit 33f14e
    Local_Level_1;
Packit 33f14e
end;
Packit 33f14e
EOF
Packit 33f14e
Packit 33f14e
sed s/foo/null/ < in > in2 || fail_ "failed to create temporary file"
Packit 33f14e
Packit 33f14e
# Before diff-2.10, the function line would be truncated like this:
Packit 33f14e
# @@ -8,7 +8,7 @@                     procedure Local_Leve
Packit 33f14e
Packit 33f14e
cat <<EOF > exp || fail_ "failed to create temporary file"
Packit 33f14e
@@ -8,7 +8,7 @@ procedure Local_Level_5 is
Packit 33f14e
                         null;
Packit 33f14e
                         null;
Packit 33f14e
                         null;
Packit 33f14e
-                        foo;
Packit 33f14e
+                        null;
Packit 33f14e
                     end;
Packit 33f14e
                 begin
Packit 33f14e
                     Local_Level_5;
Packit 33f14e
EOF
Packit 33f14e
Packit 33f14e
fail=0
Packit 33f14e
Packit 33f14e
returns_ 1 diff -u -F '^[[:space:]]*\(function\|procedure\)' in in2 \
Packit 33f14e
  > out 2> err || fail=1
Packit 33f14e
Packit 33f14e
sed -n '3,$p' out > k && mv k out || fail=1
Packit 33f14e
Packit 33f14e
compare exp out || fail=1
Packit 33f14e
Packit 33f14e
# expect empty stderr
Packit 33f14e
compare /dev/null err || fail=1
Packit 33f14e
Packit 33f14e
Exit $fail