    -- Tests that the identifers/operators are properly linked even when:
    --
    --   * backquoted, parenthesized, vanilla
    --   * qualified, not-qualified
    --
    module LinkingIdentifiers where

    ident :: Int -> Int -> Int
    x :: Int
    x ident :: Int -> Int -> Int
    `ident` 2 = (Int
    x Int -> Int -> Int
    `ident` 2) Int -> Int -> Int
    forall a. Num a => a -> a -> a
    + (Int
    x Int -> Int -> Int
    `LinkingIdentifiers.ident` 2)
    ident x :: Int
    x 2 = Int -> Int -> Int
    ident Int
    x 2 Int -> Int -> Int
    forall a. Num a => a -> a -> a
    + Int -> Int -> Int
    LinkingIdentifiers.ident Int
    x 2

    (++:++) :: Int -> Int -> Int
    x :: Int
    x ++:++ :: Int -> Int -> Int
    ++:++ 2 = (Int
    x Int -> Int -> Int
    ++:++ 2) Int -> Int -> Int
    forall a. Num a => a -> a -> a
    + (Int
    x Int -> Int -> Int
    LinkingIdentifiers.++:++ 2)
    (++:++) x :: Int
    x 2 = Int -> Int -> Int
    (++:++) Int
    x 2 Int -> Int -> Int
    forall a. Num a => a -> a -> a
    + Int -> Int -> Int
    (LinkingIdentifiers.++:++) Int
    x 2