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
394ecfc5
Commit
394ecfc5
authored
Jul 10, 2007
by
Ian Lynagh
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
{| and |} are -fgenerics syntax
parent
6517f499
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
6 additions
and
3 deletions
+6
-3
compiler/parser/Lexer.x
compiler/parser/Lexer.x
+6
-3
No files found.
compiler/parser/Lexer.x
View file @
394ecfc5
...
...
@@ -316,9 +316,9 @@ $tab+ { warn Opt_WarnTabs (text "Tab character") }
{ token ITcubxparen }
}
<glaexts> {
"{|"
{ token ITocurlybar }
"|}"
{ token ITccurlybar }
<
0,
glaexts> {
"{|"
/ { ifExtension genericsEnabled }
{ token ITocurlybar }
"|}"
/ { ifExtension genericsEnabled }
{ token ITccurlybar }
}
<0,option_prags,glaexts> {
...
...
@@ -1532,6 +1532,7 @@ kindSigsBit = 12 -- Kind signatures on type variables
recursiveDoBit = 13 -- mdo
unicodeSyntaxBit = 14 -- the forall symbol, arrow symbols, etc
unboxedTuplesBit = 15 -- (# and #)
genericsBit = 16 -- {| and |}
glaExtsEnabled, ffiEnabled, parrEnabled :: Int -> Bool
always _ = True
...
...
@@ -1550,6 +1551,7 @@ kindSigsEnabled flags = testBit flags kindSigsBit
recursiveDoEnabled flags = testBit flags recursiveDoBit
unicodeSyntaxEnabled flags = testBit flags unicodeSyntaxBit
unboxedTuplesEnabled flags = testBit flags unboxedTuplesBit
genericsEnabled flags = testBit flags genericsBit
-- PState for parsing options pragmas
--
...
...
@@ -1610,6 +1612,7 @@ mkPState buf loc flags =
.|. recursiveDoBit `setBitIf` dopt Opt_RecursiveDo flags
.|. unicodeSyntaxBit `setBitIf` dopt Opt_UnicodeSyntax flags
.|. unboxedTuplesBit `setBitIf` dopt Opt_UnboxedTuples flags
.|. genericsBit `setBitIf` dopt Opt_Generics flags
--
setBitIf :: Int -> Bool -> Int
b `setBitIf` cond | cond = bit b
...
...
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