hscTcExpr :: HscEnv
          -> String -- ^ The expression
          -> IO Type
hscTcExpr hsc_env0 expr = runInteractiveHsc hsc_env0 $ do
  hsc_env <- getHscEnv
  parsed_expr <- hscParseExpr expr
  ioMsgMaybe $ tcRnExpr hsc_env (noLoc parsed_expr)

-- | Find the kind of a type
-- Currently this does *not* generalise the kinds of the type
hscTcExpr :: HscEnv
          -> String -- ^ The expression
          -> IO Type
hscTcExpr hsc_env0 expr = runInteractiveHsc hsc_env0 $ do
  hsc_env <- getHscEnv
  parsed_expr <- hscParseExpr expr
  ioMsgMaybe $ tcRnExpr hsc_env (noLoc parsed_expr)

-- | Find the kind of a type
-- Currently this does *not* generalise the kinds of the type
hscTcExpr hsc_env0 expr = runInteractiveHsc hsc_env0 $ do
  hsc_env <- getHscEnv
  parsed_expr <- hscParseExpr expr
  ioMsgMaybe $ tcRnExpr hsc_env (noLoc parsed_expr)

-- | Find the kind of a type
-- Currently this does *not* generalise the kinds of the type