summaryrefslogtreecommitdiff
path: root/compiler/rename
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/rename')
-rw-r--r--compiler/rename/RnBinds.hs6
-rw-r--r--compiler/rename/RnEnv.hs18
-rw-r--r--compiler/rename/RnExpr.hs4
-rw-r--r--compiler/rename/RnFixity.hs4
-rw-r--r--compiler/rename/RnNames.hs20
-rw-r--r--compiler/rename/RnPat.hs6
-rw-r--r--compiler/rename/RnSource.hs22
-rw-r--r--compiler/rename/RnSplice.hs12
-rw-r--r--compiler/rename/RnTypes.hs4
-rw-r--r--compiler/rename/RnUtils.hs6
10 files changed, 51 insertions, 51 deletions
diff --git a/compiler/rename/RnBinds.hs b/compiler/rename/RnBinds.hs
index 3650fecf09..22f2cf3e9f 100644
--- a/compiler/rename/RnBinds.hs
+++ b/compiler/rename/RnBinds.hs
@@ -307,7 +307,7 @@ rnValBindsRHS ctxt (ValBinds _ mbinds sigs)
-- Note [Pattern synonym builders don't yield dependencies]
-- But psb_fvs /does/ include those builder fvs. So we
-- add them back in here to avoid bogus warnings about
- -- unused variables (Trac #12548)
+ -- unused variables (#12548)
valbind'_dus = anal_dus `plusDU` usesOnly sig_fvs
`plusDU` usesOnly patsyn_fvs
@@ -536,7 +536,7 @@ because they don't do anything! But we have three exceptions:
* A strict pattern binding; that is, one with an outermost bang
!Just _ = e
This can fail, so unlike the lazy variant, it is not a no-op.
- Moreover, Trac #13646 argues that even for single constructor
+ Moreover, #13646 argues that even for single constructor
types, you might want to write the constructor. See also #9127.
* A splice pattern
@@ -805,7 +805,7 @@ So:
(which is then used for dependency analysis)
* But we /do/ include them in the psb_fvs for the PatSynBind
* In rnValBinds we record these builder uses, to avoid bogus
- unused-variable warnings (Trac #12548)
+ unused-variable warnings (#12548)
-}
{- *********************************************************************
diff --git a/compiler/rename/RnEnv.hs b/compiler/rename/RnEnv.hs
index 87f8be7d4f..638f7dfa84 100644
--- a/compiler/rename/RnEnv.hs
+++ b/compiler/rename/RnEnv.hs
@@ -220,7 +220,7 @@ Looking up a name in the RnEnv.
Note [Type and class operator definitions]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-We want to reject all of these unless we have -XTypeOperators (Trac #3265)
+We want to reject all of these unless we have -XTypeOperators (#3265)
data a :*: b = ...
class a :*: b where ...
data (:*:) a b = ....
@@ -518,7 +518,7 @@ Note [Fall back on lookupGlobalOccRn in lookupRecFieldOcc]
Whenever we fail to find the field or it is not in scope, mb_field
will be False, and we fall back on looking it up normally using
lookupGlobalOccRn. We don't report an error immediately because the
-actual problem might be located elsewhere. For example (Trac #9975):
+actual problem might be located elsewhere. For example (#9975):
data Test = Test { x :: Int }
pattern Test wat = Test { x = wat }
@@ -531,7 +531,7 @@ the environment first, we will try and fail to find `x` amongst the
(nonexistent) fields of the pattern synonym.
Alternatively, the scope check can fail due to Template Haskell.
-Consider (Trac #12130):
+Consider (#12130):
module Foo where
import M
@@ -844,7 +844,7 @@ This is guaranteed by extendGlobalRdrEnvRn (the dups check in add_gre).
So how can we get multiple gres in lookupExactOcc_maybe? Because in
TH we might use the same TH NameU in two different name spaces.
-eg (Trac #7241):
+eg (#7241):
$(newName "Foo" >>= \o -> return [DataD [] o [] [RecC o []] [''Show]])
Here we generate a type constructor and data constructor with the same
unique, but different name spaces.
@@ -972,7 +972,7 @@ badVarInType rdr_name
{- Note [Promoted variables in types]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Consider this (Trac #12686):
+Consider this (#12686):
x = True
data Bad = Bad 'x
@@ -1054,7 +1054,7 @@ lookupInfoOccRn :: RdrName -> RnM [Name]
-- lookupInfoOccRn is intended for use in GHCi's ":info" command
-- It finds all the GREs that RdrName could mean, not complaining
-- about ambiguity, but rather returning them all
--- C.f. Trac #9881
+-- C.f. #9881
lookupInfoOccRn rdr_name =
lookupExactOrOrig rdr_name (:[]) $
do { rdr_env <- getGlobalRdrEnv
@@ -1188,7 +1188,7 @@ lookupGreAvailRn rdr_name
Note [Handling of deprecations]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* We report deprecations at each *occurrence* of the deprecated thing
- (see Trac #5867)
+ (see #5867)
* We do not report deprecations for locally-defined names. For a
start, we may be exporting a deprecated thing. Also we may use a
@@ -1203,7 +1203,7 @@ Note [Handling of deprecations]
-}
addUsedDataCons :: GlobalRdrEnv -> TyCon -> RnM ()
--- Remember use of in-scope data constructors (Trac #7969)
+-- Remember use of in-scope data constructors (#7969)
addUsedDataCons rdr_env tycon
= addUsedGREs [ gre
| dc <- tyConDataCons tycon
@@ -1660,6 +1660,6 @@ badOrigBinding name
--
-- $(pure [ValD (VarP 'succ) (NormalB (ConE 'True)) []])
--
- -- (See Trac #13968.)
+ -- (See #13968.)
where
occ = rdrNameOcc $ filterCTuple name
diff --git a/compiler/rename/RnExpr.hs b/compiler/rename/RnExpr.hs
index bed53ece35..b74b557f49 100644
--- a/compiler/rename/RnExpr.hs
+++ b/compiler/rename/RnExpr.hs
@@ -826,7 +826,7 @@ rnStmt ctxt rnBody (L loc (LastStmt _ body noret _)) thing_inside
-- The 'return' in a LastStmt is used only
-- for MonadComp; and we don't want to report
-- "non in scope: return" in other cases
- -- Trac #15607
+ -- #15607
; (thing, fvs3) <- thing_inside []
; return (([(L loc (LastStmt noExt body' noret ret_op), fv_expr)]
@@ -1305,7 +1305,7 @@ Note [Segmenting mdo]
~~~~~~~~~~~~~~~~~~~~~
NB. June 7 2012: We only glom segments that appear in an explicit mdo;
and leave those found in "do rec"'s intact. See
-http://ghc.haskell.org/trac/ghc/ticket/4148 for the discussion
+https://gitlab.haskell.org/ghc/ghc/issues/4148 for the discussion
leading to this design choice. Hence the test in segmentRecStmts.
Note [Glomming segments]
diff --git a/compiler/rename/RnFixity.hs b/compiler/rename/RnFixity.hs
index 19d8bb4c5a..1fa81c8fc2 100644
--- a/compiler/rename/RnFixity.hs
+++ b/compiler/rename/RnFixity.hs
@@ -124,7 +124,7 @@ lookupFixityRn_help' name occ
= return (False, Fixity NoSourceText minPrecedence InfixL)
-- Minimise errors from ubound names; eg
-- a>0 `foo` b>0
- -- where 'foo' is not in scope, should not give an error (Trac #7937)
+ -- where 'foo' is not in scope, should not give an error (#7937)
| otherwise
= do { local_fix_env <- getFixityEnv
@@ -178,7 +178,7 @@ lookupTyFixityRn = lookupFixityRn . unLoc
-- | Look up the fixity of a (possibly ambiguous) occurrence of a record field
-- selector. We use 'lookupFixityRn'' so that we can specifiy the 'OccName' as
-- the field label, which might be different to the 'OccName' of the selector
--- 'Name' if @DuplicateRecordFields@ is in use (Trac #1173). If there are
+-- 'Name' if @DuplicateRecordFields@ is in use (#1173). If there are
-- multiple possible selectors with different fixities, generate an error.
lookupFieldFixityRn :: AmbiguousFieldOcc GhcRn -> RnM Fixity
lookupFieldFixityRn (Unambiguous n lrdr)
diff --git a/compiler/rename/RnNames.hs b/compiler/rename/RnNames.hs
index 08f100750e..ba0b5f3e26 100644
--- a/compiler/rename/RnNames.hs
+++ b/compiler/rename/RnNames.hs
@@ -239,7 +239,7 @@ convert it back to a list. One nice side effect of this approach is that
if there's a lot of overlap in the imp_finsts of imports, the
Set doesn't really need to grow and we don't need to allocate.
-Running generateModules from Trac #14693 with DEPTH=16, WIDTH=30 finishes in
+Running generateModules from #14693 with DEPTH=16, WIDTH=30 finishes in
23s before, and 11s after.
-}
@@ -280,7 +280,7 @@ rnImportDecl this_mod
let imp_mod_name = unLoc loc_imp_mod_name
doc = ppr imp_mod_name <+> text "is directly imported"
- -- Check for self-import, which confuses the typechecker (Trac #9032)
+ -- Check for self-import, which confuses the typechecker (#9032)
-- ghc --make rejects self-import cycles already, but batch-mode may not
-- at least not until TcIface.tcHiBootIface, which is too late to avoid
-- typechecker crashes. (Indirect self imports are not caught until
@@ -296,7 +296,7 @@ rnImportDecl this_mod
(case mb_pkg of -- If we have import "<pkg>" M, then we should
-- check that "<pkg>" is "this" (which is magic)
-- or the name of this_mod's package. Yurgh!
- -- c.f. GHC.findModule, and Trac #9997
+ -- c.f. GHC.findModule, and #9997
Nothing -> True
Just (StringLiteral _ pkg_fs) -> pkg_fs == fsLit "this" ||
fsToUnitId pkg_fs == moduleUnitId this_mod))
@@ -738,9 +738,9 @@ getLocalNonValBinders fixity_env
-- such as in the following examples:
--
-- (1) The class is headed by a bang pattern, such as in
- -- `instance !Show Int` (Trac #3811c)
+ -- `instance !Show Int` (#3811c)
-- (2) The class is headed by a type variable, such as in
- -- `instance c` (Trac #16385)
+ -- `instance c` (#16385)
--
-- If looking up the class name fails, then mb_cls_nm will
-- be Nothing.
@@ -905,7 +905,7 @@ filterImports iface decl_spec (Just (want_hiding, L l import_items))
-- 'combine' is only called for associated data types which appear
-- twice in the all_avails. In the example, we combine
-- T(T,T1,T2,T3) and C(C,T) to give (T, T(T,T1,T2,T3), Just C)
- -- NB: the AvailTC can have fields as well as data constructors (Trac #12127)
+ -- NB: the AvailTC can have fields as well as data constructors (#12127)
combine (name1, a1@(AvailTC p1 _ _), mp1)
(name2, a2@(AvailTC p2 _ _), mp2)
= ASSERT2( name1 == name2 && isNothing mp1 && isNothing mp2
@@ -1030,7 +1030,7 @@ filterImports iface decl_spec (Just (want_hiding, L l import_items))
-- We are trying to import T( a,b,c,d ), and failed
-- to find 'b' and 'd'. So we make up an import item
-- to report as failing, namely T( b, d ).
- -- c.f. Trac #15412
+ -- c.f. #15412
Succeeded (childnames, childflds) ->
case mb_parent of
@@ -1358,7 +1358,7 @@ findImportUsage imports used_gres
used_names = mkNameSet (map gre_name used_gres)
used_parents = mkNameSet (mapMaybe greParent_maybe used_gres)
- unused_imps -- Not trivial; see eg Trac #7454
+ unused_imps -- Not trivial; see eg #7454
= case imps of
Just (False, L _ imp_ies) ->
foldr (add_unused . unLoc) emptyNameSet imp_ies
@@ -1403,7 +1403,7 @@ declaration is actually used in the module.
The SrcLoc is the location of the END of a particular 'import'
declaration. Why *END*? Because we don't want to get confused
-by the implicit Prelude import. Consider (Trac #7476) the module
+by the implicit Prelude import. Consider (#7476) the module
import Foo( foo )
main = print foo
There is an implicit 'import Prelude(print)', and it gets a SrcSpan
@@ -1493,7 +1493,7 @@ Note [Do not warn about Prelude hiding]
We do not warn about
import Prelude hiding( x, y )
because even if nothing else from Prelude is used, it may be essential to hide
-x,y to avoid name-shadowing warnings. Example (Trac #9061)
+x,y to avoid name-shadowing warnings. Example (#9061)
import Prelude hiding( log )
f x = log where log = ()
diff --git a/compiler/rename/RnPat.hs b/compiler/rename/RnPat.hs
index 3d5f3b92b7..ca8c665e28 100644
--- a/compiler/rename/RnPat.hs
+++ b/compiler/rename/RnPat.hs
@@ -160,7 +160,7 @@ Consider
Arguably we should report T2 as unused, even though it appears in a
pattern, because it never occurs in a constructed position. See
-Trac #7336.
+#7336.
However, implementing this in the face of pattern synonyms would be
less straightforward, since given two pattern synonyms
@@ -258,7 +258,7 @@ Consider
Here the pattern binds 'r', and then uses it *only* in the view pattern.
We want to "see" this use, and in let-bindings we collect all uses and
report unused variables at the binding level. So we must use bindLocalNames
-here, *not* bindLocalNameFV. Trac #3943.
+here, *not* bindLocalNameFV. #3943.
Note [Don't report shadowing for pattern synonyms]
@@ -853,7 +853,7 @@ inside IntegralLit and FractionalLit. These types cannot represent negative
zero value. So we had to add explicit field 'neg' which would hold information
about literal sign. Here in rnOverLit we use it to detect negative zeroes and
in this case return not only literal itself but also negateName so that users
-can apply it explicitly. In this case it stays negative zero. Trac #13211
+can apply it explicitly. In this case it stays negative zero. #13211
-}
rnOverLit :: HsOverLit t ->
diff --git a/compiler/rename/RnSource.hs b/compiler/rename/RnSource.hs
index 19f0d315d2..5181b7f2ed 100644
--- a/compiler/rename/RnSource.hs
+++ b/compiler/rename/RnSource.hs
@@ -127,7 +127,7 @@ rnSrcDecls group@(HsGroup { hs_valds = val_decls,
-- (D1) Bring pattern synonyms into scope.
-- Need to do this before (D2) because rnTopBindsLHS
- -- looks up those pattern synonyms (Trac #9889)
+ -- looks up those pattern synonyms (#9889)
extendPatSynEnv val_decls local_fix_env $ \pat_syn_bndrs -> do {
@@ -660,7 +660,7 @@ rnClsInstDecl (ClsInstDecl { cid_poly_ty = inst_ty, cid_binds = mbinds
-- we report an error and continue for as long as we can.
-- Importantly, this error should be thrown before we reach the
-- typechecker, lest we encounter different errors that are
- -- hopelessly confusing (such as the one in Trac #16114).
+ -- hopelessly confusing (such as the one in #16114).
addErrAt (getLoc (hsSigType inst_ty)) $
hang (text "Illegal class instance:" <+> quotes (ppr inst_ty))
2 (vcat [ text "Class instances must be of the form"
@@ -955,7 +955,7 @@ bound on the LHS. For example, this is not ok
type F a x :: *
instance C (p,q) r where
type F (p,q) x = (x, r) -- BAD: mentions 'r'
-c.f. Trac #5515
+c.f. #5515
Kind variables, on the other hand, are allowed to be implicitly or explicitly
bound. As examples, this (#9574) is acceptable:
@@ -980,7 +980,7 @@ So for parity with type synonyms, we also allow:
All this applies only for *instance* declarations. In *class*
declarations there is no RHS to worry about, and the class variables
-can all be in scope (Trac #5862):
+can all be in scope (#5862):
class Category (x :: k -> k -> *) where
type Ob x :: k -> Constraint
id :: Ob x a => x a a
@@ -997,7 +997,7 @@ by a forall. For instance, the following is acceptable:
type forall b. T (Maybe a) b = Either a b
Even though `a` is not bound by the forall, this is still accepted because `a`
-was previously bound by the `instance C (Maybe a)` part. (see Trac #16116).
+was previously bound by the `instance C (Maybe a)` part. (see #16116).
In each case, the function which detects improperly bound variables on the RHS
is TcValidity.checkValidFamPats.
@@ -1225,7 +1225,7 @@ reasons:
This has a kind error, but the error message is better if you
check T first, (fixing its kind) and *then* S. If you do kind
inference together, you might get an error reported in S, which
- is jolly confusing. See Trac #4875
+ is jolly confusing. See #4875
* Increase kind polymorphism. See TcTyClsDecls
@@ -1233,7 +1233,7 @@ reasons:
Why do the instance declarations participate? At least two reasons
-* Consider (Trac #11348)
+* Consider (#11348)
type family F a
type instance F Int = Bool
@@ -1246,7 +1246,7 @@ Why do the instance declarations participate? At least two reasons
know that unless we've looked at the type instance declaration for F
before kind-checking Foo.
-* Another example is this (Trac #3990).
+* Another example is this (#3990).
data family Complex a
data instance Complex Double = CD {-# UNPACK #-} !Double
@@ -2064,7 +2064,7 @@ rnInjectivityAnn _ _ (dL->L srcSpan (InjectivityAnn injFrom injTo)) =
{-
Note [Stupid theta]
~~~~~~~~~~~~~~~~~~~
-Trac #3850 complains about a regression wrt 6.10 for
+#3850 complains about a regression wrt 6.10 for
data Show a => T a
There is no reason not to allow the stupid theta if there are no data
constructors. It's still stupid, but does no harm, and I don't want
@@ -2142,7 +2142,7 @@ rnConDecl decl@(ConDeclGADT { con_names = names
-- order of their appearance in the constructor type.
-- That order governs the order the implicitly-quantified type
-- variable, and hence the order needed for visible type application
- -- See Trac #14808.
+ -- See #14808.
free_tkvs = extractHsTvBndrs explicit_tkvs $
extractHsTysRdrTyVarsDups (theta ++ arg_tys ++ [res_ty])
@@ -2325,7 +2325,7 @@ add gp loc (SpliceD _ splice@(SpliceDecl _ _ flag)) ds
-- The compiler should suggest the above, and not using
-- TemplateHaskell since the former suggestion is more
-- relevant to the larger base of users.
- -- See Trac #12146 for discussion.
+ -- See #12146 for discussion.
-- Class declarations: pull out the fixity signatures to the top
add gp@(HsGroup {hs_tyclds = ts, hs_fixds = fs}) l (TyClD _ d) ds
diff --git a/compiler/rename/RnSplice.hs b/compiler/rename/RnSplice.hs
index a0c926d4e7..1d5c68fd5b 100644
--- a/compiler/rename/RnSplice.hs
+++ b/compiler/rename/RnSplice.hs
@@ -447,16 +447,16 @@ rnSpliceExpr splice
{- Note [Running splices in the Renamer]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Splices used to be run in the typechecker, which led to (Trac #4364). Since the
+Splices used to be run in the typechecker, which led to (#4364). Since the
renamer must decide which expressions depend on which others, and it cannot
reliably do this for arbitrary splices, we used to conservatively say that
splices depend on all other expressions in scope. Unfortunately, this led to
-the problem of cyclic type declarations seen in (Trac #4364). Instead, by
+the problem of cyclic type declarations seen in (#4364). Instead, by
running splices in the renamer, we side-step the problem of determining
dependencies: by the time the dependency analysis happens, any splices have
already been run, and expression dependencies can be determined as usual.
-However, see (Trac #9813), for an example where we would like to run splices
+However, see (#9813), for an example where we would like to run splices
*after* performing dependency analysis (that is, after renaming). It would be
desirable to typecheck "non-splicy" expressions (those expressions that do not
contain splices directly or via dependence on an expression that does) before
@@ -477,7 +477,7 @@ we wish to first determine dependencies and typecheck certain expressions,
making them available to reify, but cannot accurately determine dependencies
without running splices in the renamer!
-Indeed, the conclusion of (Trac #9813) was that it is not worth the complexity
+Indeed, the conclusion of (#9813) was that it is not worth the complexity
to try and
a) implement and maintain the code for renaming/typechecking non-splicy
expressions before splicy expressions,
@@ -490,7 +490,7 @@ to try and
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
When splices run in the renamer, 'reify' does not have access to the local
-type environment (Trac #11832, [1]).
+type environment (#11832, [1]).
For instance, in
@@ -856,7 +856,7 @@ ensures that 'f' stays as a top level binding.
This must be done by the renamer, not the type checker (as of old),
because the type checker doesn't typecheck the body of untyped
-brackets (Trac #8540).
+brackets (#8540).
A thing can have a bind_lvl of outerLevel, but have an internal name:
foo = [d| op = 3
diff --git a/compiler/rename/RnTypes.hs b/compiler/rename/RnTypes.hs
index 53bcadee2a..755ed206f0 100644
--- a/compiler/rename/RnTypes.hs
+++ b/compiler/rename/RnTypes.hs
@@ -352,7 +352,7 @@ Variables in type signatures are implicitly quantified
when (1) they are in a type signature not beginning
with "forall" or (2) in any qualified type T => R.
We are phasing out (2) since it leads to inconsistencies
-(Trac #4426):
+(#4426):
data A = A (a -> a) is an error
data A = A (Eq a => a -> a) binds "a"
@@ -1335,7 +1335,7 @@ checkSectionPrec direction section op arg
-- | Look up the fixity for an operator name. Be careful to use
-- 'lookupFieldFixityRn' for (possibly ambiguous) record fields
--- (see Trac #13132).
+-- (see #13132).
lookupFixityOp :: OpName -> RnM Fixity
lookupFixityOp (NormalOp n) = lookupFixityRn n
lookupFixityOp NegateOp = lookupFixityRn negateName
diff --git a/compiler/rename/RnUtils.hs b/compiler/rename/RnUtils.hs
index 9de4aacaba..a4715a23f6 100644
--- a/compiler/rename/RnUtils.hs
+++ b/compiler/rename/RnUtils.hs
@@ -149,7 +149,7 @@ checkShadowedOccs (global_env,local_env) get_loc_occ ns
where
check_shadow n
| startsWithUnderscore occ = return () -- Do not report shadowing for "_x"
- -- See Trac #3262
+ -- See #3262
| Just n <- mb_local = complain [text "bound at" <+> ppr (nameSrcLoc n)]
| otherwise = do { gres' <- filterM is_shadowed_gre gres
; complain (map pprNameProvenance gres') }
@@ -167,7 +167,7 @@ checkShadowedOccs (global_env,local_env) get_loc_occ ns
is_shadowed_gre :: GlobalRdrElt -> RnM Bool
-- Returns False for record selectors that are shadowed, when
- -- punning or wild-cards are on (cf Trac #2723)
+ -- punning or wild-cards are on (cf #2723)
is_shadowed_gre gre | isRecFldGRE gre
= do { dflags <- getDynFlags
; return $ not (xopt LangExt.RecordPuns dflags
@@ -385,7 +385,7 @@ addNameClashErrRn rdr_name gres
-- It could refer to either ‘T15487a.null’,
-- imported from ‘Prelude’ at T15487.hs:1:8-13
-- or ...
- -- See Trac #15487
+ -- See #15487
pp_gre_name gre@(GRE { gre_name = name, gre_par = parent
, gre_lcl = lcl, gre_imp = iss })
| FldParent { par_lbl = Just lbl } <- parent