+%************************************************************************
+%* *
+\subsection{Known names}
+%* *
+%************************************************************************
+
+The following names are known to the compiler, but they don't require
+pre-assigned keys. Mostly these names are used in generating deriving
+code, which is passed through the renamer anyway.
+
+ THEY ARE ALL ORIGINAL NAMES, HOWEVER
+
+\begin{code}
+-- Lists and tuples
+tupleCon_RDR, tupleTyCon_RDR :: Int -> RdrName
+ubxTupleCon_RDR, ubxTupleTyCon_RDR :: Int -> RdrName
+
+tupleCon_RDR = mkTupConRdrName dataName Boxed
+tupleTyCon_RDR = mkTupConRdrName tcName Boxed
+ubxTupleCon_RDR = mkTupConRdrName dataName Unboxed
+ubxTupleTyCon_RDR = mkTupConRdrName tcName Unboxed
+
+unitCon_RDR = dataQual_RDR pREL_BASE_Name SLIT("()")
+unitTyCon_RDR = tcQual_RDR pREL_BASE_Name SLIT("()")
+
+and_RDR = varQual_RDR pREL_BASE_Name SLIT("&&")
+not_RDR = varQual_RDR pREL_BASE_Name SLIT("not")
+compose_RDR = varQual_RDR pREL_BASE_Name SLIT(".")
+ne_RDR = varQual_RDR pREL_BASE_Name SLIT("/=")
+le_RDR = varQual_RDR pREL_BASE_Name SLIT("<=")
+lt_RDR = varQual_RDR pREL_BASE_Name SLIT("<")
+gt_RDR = varQual_RDR pREL_BASE_Name SLIT(">")
+ltTag_RDR = dataQual_RDR pREL_BASE_Name SLIT("LT")
+eqTag_RDR = dataQual_RDR pREL_BASE_Name SLIT("EQ")
+gtTag_RDR = dataQual_RDR pREL_BASE_Name SLIT("GT")
+max_RDR = varQual_RDR pREL_BASE_Name SLIT("max")
+min_RDR = varQual_RDR pREL_BASE_Name SLIT("min")
+compare_RDR = varQual_RDR pREL_BASE_Name SLIT("compare")
+showList_RDR = varQual_RDR pREL_SHOW_Name SLIT("showList")
+showList___RDR = varQual_RDR pREL_SHOW_Name SLIT("showList__")
+showsPrec_RDR = varQual_RDR pREL_SHOW_Name SLIT("showsPrec")
+showSpace_RDR = varQual_RDR pREL_SHOW_Name SLIT("showSpace")
+showString_RDR = varQual_RDR pREL_SHOW_Name SLIT("showString")
+showParen_RDR = varQual_RDR pREL_SHOW_Name SLIT("showParen")
+readsPrec_RDR = varQual_RDR pREL_READ_Name SLIT("readsPrec")
+readList_RDR = varQual_RDR pREL_READ_Name SLIT("readList")
+readParen_RDR = varQual_RDR pREL_READ_Name SLIT("readParen")
+lex_RDR = varQual_RDR pREL_READ_Name SLIT("lex")
+readList___RDR = varQual_RDR pREL_READ_Name SLIT("readList__")
+times_RDR = varQual_RDR pREL_NUM_Name SLIT("*")
+plus_RDR = varQual_RDR pREL_NUM_Name SLIT("+")
+negate_RDR = varQual_RDR pREL_NUM_Name SLIT("negate")
+range_RDR = varQual_RDR pREL_ARR_Name SLIT("range")
+index_RDR = varQual_RDR pREL_ARR_Name SLIT("index")
+inRange_RDR = varQual_RDR pREL_ARR_Name SLIT("inRange")
+succ_RDR = varQual_RDR pREL_ENUM_Name SLIT("succ")
+pred_RDR = varQual_RDR pREL_ENUM_Name SLIT("pred")
+minBound_RDR = varQual_RDR pREL_ENUM_Name SLIT("minBound")
+maxBound_RDR = varQual_RDR pREL_ENUM_Name SLIT("maxBound")
+assertErr_RDR = varQual_RDR pREL_ERR_Name SLIT("assertError")