From 4a4c77ed8f16f157dd647593de58840b024bbd2d Mon Sep 17 00:00:00 2001 From: Alan Zimmerman Date: Thu, 10 Mar 2022 23:23:16 +0000 Subject: EPA: do statement with leading semicolon has wrong anchor The code do; a <- doAsync; b Generated an incorrect Anchor for the statement list that starts after the first semicolon. This commit fixes it. Closes #20256 --- testsuite/tests/printer/Makefile | 5 +++++ testsuite/tests/printer/Test20256.hs | 5 +++++ testsuite/tests/printer/all.T | 1 + 3 files changed, 11 insertions(+) create mode 100644 testsuite/tests/printer/Test20256.hs (limited to 'testsuite') diff --git a/testsuite/tests/printer/Makefile b/testsuite/tests/printer/Makefile index 2c4195eeb1..e80655d83f 100644 --- a/testsuite/tests/printer/Makefile +++ b/testsuite/tests/printer/Makefile @@ -754,3 +754,8 @@ Test20297: Test20846: $(CHECK_PPR) $(LIBDIR) Test20846.hs $(CHECK_EXACT) $(LIBDIR) Test20846.hs + +.PHONY: Test20256 +Test20256: + $(CHECK_PPR) $(LIBDIR) Test20256.hs + $(CHECK_EXACT) $(LIBDIR) Test20256.hs diff --git a/testsuite/tests/printer/Test20256.hs b/testsuite/tests/printer/Test20256.hs new file mode 100644 index 0000000000..4ffa9a76f0 --- /dev/null +++ b/testsuite/tests/printer/Test20256.hs @@ -0,0 +1,5 @@ +module Test20256 where + +foo = do + ; a <- doAsync + ; b diff --git a/testsuite/tests/printer/all.T b/testsuite/tests/printer/all.T index 4562acc8e5..12b3960a7a 100644 --- a/testsuite/tests/printer/all.T +++ b/testsuite/tests/printer/all.T @@ -174,6 +174,7 @@ test('PprCommentPlacement2', [ignore_stderr, req_ppr_deps], makefile_test, ['Ppr test('Test20243', [ignore_stderr, req_ppr_deps], makefile_test, ['Test20243']) test('Test20247', [ignore_stderr, req_ppr_deps], makefile_test, ['Test20247']) +test('Test20256', [ignore_stderr, req_ppr_deps], makefile_test, ['Test20256']) test('Test20258', [ignore_stderr, req_ppr_deps], makefile_test, ['Test20258']) test('Test20297', [ignore_stderr, req_ppr_deps], makefile_test, ['Test20297']) test('Test20846', [ignore_stderr, req_ppr_deps], makefile_test, ['Test20846']) -- cgit v1.2.1