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
bcaf1ab2
Commit
bcaf1ab2
authored
Jul 10, 2007
by
Ian Lynagh
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
5# syntax is enabled by the MagicHash extension
parent
394ecfc5
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
9 additions
and
9 deletions
+9
-9
compiler/parser/Lexer.x
compiler/parser/Lexer.x
+9
-9
No files found.
compiler/parser/Lexer.x
View file @
bcaf1ab2
...
...
@@ -376,21 +376,21 @@ $tab+ { warn Opt_WarnTabs (text "Tab character") }
@floating_point { strtoken tok_float }
}
<glaexts> {
<
0,
glaexts> {
-- Unboxed ints (:: Int#)
-- It's simpler (and faster?) to give separate cases to the negatives,
-- especially considering octal/hexadecimal prefixes.
@decimal \#
{ tok_primint positive 0 1 decimal }
0[oO] @octal \#
{ tok_primint positive 2 3 octal }
0[xX] @hexadecimal \#
{ tok_primint positive 2 3 hexadecimal }
@negative @decimal \#
{ tok_primint negative 1 2 decimal }
@negative 0[oO] @octal \#
{ tok_primint negative 3 4 octal }
@negative 0[xX] @hexadecimal \#
{ tok_primint negative 3 4 hexadecimal }
@decimal \#
/ { ifExtension magicHashEnabled }
{ tok_primint positive 0 1 decimal }
0[oO] @octal \#
/ { ifExtension magicHashEnabled }
{ tok_primint positive 2 3 octal }
0[xX] @hexadecimal \#
/ { ifExtension magicHashEnabled }
{ tok_primint positive 2 3 hexadecimal }
@negative @decimal \#
/ { ifExtension magicHashEnabled }
{ tok_primint negative 1 2 decimal }
@negative 0[oO] @octal \#
/ { ifExtension magicHashEnabled }
{ tok_primint negative 3 4 octal }
@negative 0[xX] @hexadecimal \#
/ { ifExtension magicHashEnabled }
{ tok_primint negative 3 4 hexadecimal }
-- Unboxed floats and doubles (:: Float#, :: Double#)
-- prim_{float,double} work with signed literals
@signed @floating_point \#
{ init_strtoken 1 tok_primfloat }
@signed @floating_point \# \#
{ init_strtoken 2 tok_primdouble }
@signed @floating_point \#
/ { ifExtension magicHashEnabled }
{ init_strtoken 1 tok_primfloat }
@signed @floating_point \# \#
/ { ifExtension magicHashEnabled }
{ init_strtoken 2 tok_primdouble }
}
-- Strings and chars are lexed by hand-written code. The reason is
...
...
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