diff --git a/compiler/GHC/Parser.y b/compiler/GHC/Parser.y index 7ec7637d1f7ebc52dad794fe785a9fb43f7791d8..050c696a0a475c9ea3893560d6ac72a641d9f62a 100644 --- a/compiler/GHC/Parser.y +++ b/compiler/GHC/Parser.y @@ -2653,7 +2653,7 @@ sigdecl :: { LHsDecl GhcPs } (Fixity fixText fixPrec (unLoc $1))))) }} - | pattern_synonym_sig { sL1a $1 . SigD noExtField . unLoc $ $1 } + | pattern_synonym_sig { L (getLoc $1) . SigD noExtField . unLoc $ $1 } | '{-# COMPLETE' qcon_list opt_tyconsig '#-}' {% let (dcolon, tc) = $3 diff --git a/testsuite/tests/printer/Makefile b/testsuite/tests/printer/Makefile index 9d8c735308c3d82e33f45cbf84d78fbe885154d3..8b9e56cbe6d6c2f59fa00f437b5de5d5ed8802c8 100644 --- a/testsuite/tests/printer/Makefile +++ b/testsuite/tests/printer/Makefile @@ -846,3 +846,8 @@ Test24748: DataDeclShort: $(CHECK_PPR) $(LIBDIR) DataDeclShort.hs $(CHECK_EXACT) $(LIBDIR) DataDeclShort.hs + +.PHONY: Test24749 +Test24749: + $(CHECK_PPR) $(LIBDIR) Test24749.hs + $(CHECK_EXACT) $(LIBDIR) Test24749.hs diff --git a/testsuite/tests/printer/Test24749.hs b/testsuite/tests/printer/Test24749.hs new file mode 100644 index 0000000000000000000000000000000000000000..729da647dcf0335bd65a204892680a7c8a8a5fba --- /dev/null +++ b/testsuite/tests/printer/Test24749.hs @@ -0,0 +1,11 @@ +{-# LANGUAGE PatternSynonyms #-} +module Test24749 where + +-- c0 +pattern (:|) :: + -- c1 + a -> + -- c2 + a -> + -- c3 + Domino a diff --git a/testsuite/tests/printer/all.T b/testsuite/tests/printer/all.T index da192356745b0ad9321ffdff7f1a6f77477b6f53..ce076aaa8744dbcb133c4e5a7810ec76b3ca2e3d 100644 --- a/testsuite/tests/printer/all.T +++ b/testsuite/tests/printer/all.T @@ -202,3 +202,4 @@ test('CaseAltComments', [ignore_stderr, req_ppr_deps], makefile_test, ['CaseAltC test('MatchPatComments', [ignore_stderr, req_ppr_deps], makefile_test, ['MatchPatComments']) test('Test24748', [ignore_stderr, req_ppr_deps], makefile_test, ['Test24748']) test('DataDeclShort', [ignore_stderr, req_ppr_deps], makefile_test, ['DataDeclShort']) +test('Test24749', [ignore_stderr, req_ppr_deps], makefile_test, ['Test24749'])