Hello Everyone,
If the end of an inserted block matches the end of the block preceding the
insert, then the output between "diff" and "diff3" is not the same.
It looks like "diff" takes LCS from the end up, while "diff3" goes top down
which is more natural to the eye (see attached VS Code output, which matched
diff3).
Is this a known issue, intended, or something that should be addressed?
Kind regards,
Marc
PS: This is based on diffutils 3.8 stable
mbtlinux:/sap/downloads # diff original.txt after_change.txt
6a7
> METHODS test_3.
16a18,26
> IF 1 = 2.
> BREAK-POINT.
> ENDIF.
> ENDMETHOD.
>
>
>
> METHOD test_3.
> "method 3
mbtlinux:/sap/downloads # diff3 original.txt original.txt after_change.txt
====3
1:6a
2:6a
3:7c
METHODS test_3.
====3
1:21a
2:21a
3:23,31c
METHOD test_3.
"method 3
IF 1 = 2.
BREAK-POINT.
ENDIF.
ENDMETHOD.
mbtlinux:/sap/downloads #
REPORT ztest_diff_old.
CLASS lcl_test DEFINITION.
PUBLIC SECTION.
METHODS test_1.
METHODS test_2.
ENDCLASS.
CLASS lcl_test IMPLEMENTATION.
METHOD test_1.
"comment
ENDMETHOD.
METHOD test_2.
"comment
IF 1 = 2.
BREAK-POINT.
ENDIF.
ENDMETHOD.
ENDCLASS.
REPORT ztest_diff_old.
CLASS lcl_test DEFINITION.
PUBLIC SECTION.
METHODS test_1.
METHODS test_2.
METHODS test_3.
ENDCLASS.
CLASS lcl_test IMPLEMENTATION.
METHOD test_1.
"comment
ENDMETHOD.
METHOD test_2.
"comment
IF 1 = 2.
BREAK-POINT.
ENDIF.
ENDMETHOD.
METHOD test_3.
"method 3
IF 1 = 2.
BREAK-POINT.
ENDIF.
ENDMETHOD.
ENDCLASS.
mbtlinux:/sap/downloads # diff -v
diff (GNU diffutils) 3.8
Copyright (C) 2021 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Paul Eggert, Mike Haertel, David Hayes,
Richard Stallman, and Len Tower.
mbtlinux:/sap/downloads # diff original.txt after_change.txt
6a7
> METHODS test_3.
16a18,26
> IF 1 = 2.
> BREAK-POINT.
> ENDIF.
> ENDMETHOD.
>
>
>
> METHOD test_3.
> "method 3
mbtlinux:/sap/downloads # diff3 original.txt original.txt after_change.txt
====3
1:6a
2:6a
3:7c
METHODS test_3.
====3
1:21a
2:21a
3:23,31c
METHOD test_3.
"method 3
IF 1 = 2.
BREAK-POINT.
ENDIF.
ENDMETHOD.
mbtlinux:/sap/downloads #