Skip to content
  • Alan Zimmerman's avatar
    ApiAnnotations : quoted type variables missing leading quote · 15aafc7f
    Alan Zimmerman authored
    The HsOpTy can be constructed for a promoted type operator, in which case it has the following form
    
            | btype SIMPLEQUOTE qconop type     { sLL $1 $> $ mkHsOpTy $1 $3 $4 }
            | btype SIMPLEQUOTE varop  type     { sLL $1 $> $ mkHsOpTy $1 $3 $4 }
    
    The SIMPLEQUOTE does not get an annotation, so cannot be reproduced via the API Annotations.
    
    Also, in
    
    splice_exp :: { LHsExpr RdrName }
            : TH_ID_SPLICE          { sL1 $1 $ mkHsSpliceE
                                            (sL1 $1 $ HsVar (mkUnqual varName
                                                            (getTH_ID_SPLICE $1))) }
            | '$(' exp ')'          {% ams (sLL $1 $> $ mkHsSpliceE $2) [mo $1,mc $3] }
            | TH_ID_TY_SPLICE       { sL1 $1 $ mkHsSpliceTE
                                            (sL1 $1 $ HsVar (mkUnqual varName
                                                         (getTH_ID_TY_SPLICE $1))) }
            | '$$(' exp ')'         {% ams (sLL $1 $> $ mkHsSpliceTE $2) [mo $1,mc $3] }
    
    the TH_ID_SPLICE and TH_ID_TY_SPLICE positions are lost.
    
    Reviewed By: austin
    
    Differential Revision: https://phabricator.haskell.org/D825
    
    GHC Trac Issues: #10268
    15aafc7f