Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
GHC
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Iterations
Merge Requests
0
Merge Requests
0
Requirements
Requirements
List
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Package Registry
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issue
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Alex D
GHC
Commits
017d11e0
Commit
017d11e0
authored
Nov 14, 2016
by
Gabor Greif
💬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Typos in comments, notes and manual
parent
642adec4
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
15 additions
and
15 deletions
+15
-15
compiler/coreSyn/CoreUtils.hs
compiler/coreSyn/CoreUtils.hs
+1
-1
compiler/typecheck/TcExpr.hs
compiler/typecheck/TcExpr.hs
+2
-2
compiler/typecheck/TcFlatten.hs
compiler/typecheck/TcFlatten.hs
+1
-1
compiler/typecheck/TcGenDeriv.hs
compiler/typecheck/TcGenDeriv.hs
+1
-1
compiler/typecheck/TcInstDcls.hs
compiler/typecheck/TcInstDcls.hs
+1
-1
compiler/typecheck/TcMType.hs
compiler/typecheck/TcMType.hs
+1
-1
compiler/typecheck/TcSimplify.hs
compiler/typecheck/TcSimplify.hs
+2
-2
compiler/typecheck/TcUnify.hs
compiler/typecheck/TcUnify.hs
+1
-1
compiler/vectorise/Vectorise.hs
compiler/vectorise/Vectorise.hs
+1
-1
docs/users_guide/glasgow_exts.rst
docs/users_guide/glasgow_exts.rst
+3
-3
testsuite/tests/typecheck/should_fail/tcfail174.hs
testsuite/tests/typecheck/should_fail/tcfail174.hs
+1
-1
No files found.
compiler/coreSyn/CoreUtils.hs
View file @
017d11e0
...
...
@@ -2091,7 +2091,7 @@ rhsIsStatic :: Platform
--
-- (ii) We treat partial applications as redexes, because in fact we
-- make a thunk for them that runs and builds a PAP
-- at run-time. The only appliations that are treated as
-- at run-time. The only appli
c
ations that are treated as
-- static are *saturated* applications of constructors.
-- We used to try to be clever with nested structures like this:
...
...
compiler/typecheck/TcExpr.hs
View file @
017d11e0
...
...
@@ -306,7 +306,7 @@ People write
so much, where
runST :: (forall s. ST s a) -> a
that I have finally given in and written a special type-checking
rule just for saturated appliations of ($).
rule just for saturated appli
c
ations of ($).
* Infer the type of the first argument
* Decompose it; should be of form (arg2_ty -> res_ty),
where arg2_ty might be a polytype
...
...
@@ -1938,7 +1938,7 @@ getFixedTyVars upd_fld_occs univ_tvs cons
-- Universally-quantified tyvars that
-- appear in any of the *implicit*
-- arguments to the constructor are fixed
-- See Note [Implict type sharing]
-- See Note [Implic
i
t type sharing]
fixed_tys
=
[
ty
|
(
fl
,
ty
)
<-
zip
flds
arg_tys
,
not
(
flLabel
fl
`
elem
`
upd_fld_occs
)]
...
...
compiler/typecheck/TcFlatten.hs
View file @
017d11e0
...
...
@@ -432,7 +432,7 @@ Assuming NOT rewriting wanteds with wanteds
[G] V a ~ f_aBg
Worklist includes [W] Scalar fmv_aBi ~ fmv_aBk
fmv_aBi, fmv_aBk are flatten unifica
it
on variables
fmv_aBi, fmv_aBk are flatten unifica
ti
on variables
Work item: [W] V fsk_aBh ~ fmv_aBi
...
...
compiler/typecheck/TcGenDeriv.hs
View file @
017d11e0
...
...
@@ -1591,7 +1591,7 @@ a polytype. E.g.
The type checker checks this code, and it currently requires
-XImpredicativeTypes to permit that polymorphic type instantiation,
so
ew
have to switch that flag on locally in TcDeriv.genInst.
so
we
have to switch that flag on locally in TcDeriv.genInst.
See #8503 for more discussion.
...
...
compiler/typecheck/TcInstDcls.hs
View file @
017d11e0
...
...
@@ -941,7 +941,7 @@ Notice that
be usused in some, but dead-code elimination will drop it.)
We achieve this by putting the the evidence variable for the overall
instance implica
it
on into the AbsBinds for each method/superclass.
instance implica
ti
on into the AbsBinds for each method/superclass.
Hence the 'dfun_ev_binds' passed into tcMethods and tcSuperClasses.
(And that in turn is why the abs_ev_binds field of AbBinds is a
[TcEvBinds] rather than simply TcEvBinds.
...
...
compiler/typecheck/TcMType.hs
View file @
017d11e0
...
...
@@ -379,7 +379,7 @@ checkingExpType err et = pprPanic "checkingExpType" (text err $$ ppr et)
tauifyExpType
::
ExpType
->
TcM
ExpType
-- ^ Turn a (Infer hole) type into a (Check alpha),
-- where alpha is a fresh unifica
it
on variable
-- where alpha is a fresh unifica
ti
on variable
tauifyExpType
(
Check
ty
)
=
return
(
Check
ty
)
-- No-op for (Check ty)
tauifyExpType
(
Infer
inf_res
)
=
do
{
ty
<-
inferResultToType
inf_res
;
return
(
Check
ty
)
}
...
...
compiler/typecheck/TcSimplify.hs
View file @
017d11e0
...
...
@@ -1553,8 +1553,8 @@ of progress. Trac #8474 is a classic example:
exponentially many) iterations!
Conclusion: we should call solveNestedImplications only if we did
some unifiction in solveSimpleWanteds; because that's the only way
we'll get more Givens (a unifica
it
on is like adding a Given) to
some unific
a
tion in solveSimpleWanteds; because that's the only way
we'll get more Givens (a unifica
ti
on is like adding a Given) to
allow the implication to make progress.
-}
...
...
compiler/typecheck/TcUnify.hs
View file @
017d11e0
...
...
@@ -999,7 +999,7 @@ with constraints
Here we abstract over the '->' inside the forall, in case that
is subject to an equality constraint from a GADT match.
Note that we kept the outer (->) bec
ua
se that's part of
Note that we kept the outer (->) bec
au
se that's part of
the polymorphic "shape". And becauuse of impredicativity,
GADT matches can't give equalities that affect polymorphic
shape.
...
...
compiler/vectorise/Vectorise.hs
View file @
017d11e0
...
...
@@ -275,7 +275,7 @@ vectTopBind b@(Rec binds)
-- Add a vectorised binding to an imported top-level variable that has a VECTORISE pragma
-- in this module.
--
-- REST
IR
CTION: Currently, we cannot use the pragma for mutually recursive definitions.
-- REST
RI
CTION: Currently, we cannot use the pragma for mutually recursive definitions.
--
vectImpBind
::
(
Id
,
CoreExpr
)
->
VM
CoreBind
vectImpBind
(
var
,
expr
)
...
...
docs/users_guide/glasgow_exts.rst
View file @
017d11e0
...
...
@@ -9493,13 +9493,13 @@ your ``forall``\s explicitly. Indeed, doing so is strongly advised for
rank
-
2
types
.
Sometimes
there
*
is
*
no
"outermost level"
,
in
which
case
no
implicit
quanification
happens
:
::
implicit
quan
t
ification
happens
:
::
data
PackMap
a
b
s
t
=
PackMap
(
Monad
f
=>
(
a
->
f
b
)
->
s
->
f
t
)
This
is
rejected
because
there
is
no
"outermost level"
for
the
types
on
the
RHS
(
it
would
obviously
be
terrible
to
add
extra
parameters
to
``
PackMap
``),
so
no
implicit
quantifica
it
on
happens
,
and
the
declaration
is
rejected
so
no
implicit
quantifica
ti
on
happens
,
and
the
declaration
is
rejected
(
with
"``f`` is out of scope"
).
Solution
:
use
an
explicit
``
forall
``:
::
data
PackMap
a
b
s
t
=
PackMap
(
forall
f
.
Monad
f
=>
(
a
->
f
b
)
->
s
->
f
t
)
...
...
@@ -11590,7 +11590,7 @@ optionally had by adding ``!`` in front of a variable.
In
ordinary
Haskell
,
``
f
``
is
lazy
in
its
argument
and
hence
in
``
x
``;
and
``
g
``
is
strict
in
its
argument
and
hence
also
strict
in
``
x
``.
With
``
Strict
``,
both
become
strict
because
``
f
``
's argument
gets an implict bang.
gets an implic
i
t bang.
.. _strict-modularity:
...
...
testsuite/tests/typecheck/should_fail/tcfail174.hs
View file @
017d11e0
...
...
@@ -8,7 +8,7 @@ data Capture a = Base a
g
::
Capture
(
forall
a
.
a
->
a
)
g
=
Base
id
-- Fails; need a rigid signature on 'id'
-- Actually, succeeds now, with visible type application
-- Disagree: should not succeed bec
ua
se it instantiates
-- Disagree: should not succeed bec
au
se it instantiates
-- Base with a forall type
-- This function should definitely be rejected, with or without type signature
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment