Skip to content

Lots of inline-rule-shadowing warnings #487

@sjakobi

Description

@sjakobi

This is with GHC-9.2.2 and the current master / conduit-1.3.4.2:

src/Data/Conduit/Internal/Pipe.hs:217:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: CI.await >>= maybe" may never fire
      because ‘maybe’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘maybe’
    |
217 | {-# RULES "conduit: CI.await >>= maybe" forall x y. await >>= maybe x y = NeedInput y (const x) #-}
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/Data/Conduit/Internal/Pipe.hs:226:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: awaitE >>= either" may never fire
      because ‘either’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘either’
    |
226 | {-# RULES "conduit: awaitE >>= either" forall x y. awaitE >>= either x y = NeedInput y x #-}
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/Data/Conduit/Internal/Conduit.hs:879:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: await >>= maybe" may never fire
      because ‘maybe’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘maybe’
    |
879 | {-# RULES "conduit: await >>= maybe" forall x y. await >>= maybe x y = await' x y #-}
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/Data/Conduit/Internal/Fusion.hs:71:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: fuseStream (.|)" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
   |
71 | {-# RULES "conduit: fuseStream (.|)" forall left right.
   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:74:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: fuseStream (fuse)" may never fire
      because ‘fuse’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘fuse’
   |
74 | {-# RULES "conduit: fuseStream (fuse)" forall left right.
   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:102:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: runStream (pure)" may never fire
      because ‘runConduitPure’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitPure’
    |
102 | {-# RULES "conduit: runStream (pure)" forall stream.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:105:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: runStream (ResourceT)" may never fire
      because ‘runConduitRes’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitRes’
    |
105 | {-# RULES "conduit: runStream (ResourceT)" forall stream.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:157:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduit/.|)" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
157 | {-# RULES "conduit: connectStream1 (runConduit/.|)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:163:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduit/fuse)" may never fire
      because ‘fuse’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘fuse’
    |
163 | {-# RULES "conduit: connectStream1 (runConduit/fuse)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:167:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduitPure/.|)" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
167 | {-# RULES "conduit: connectStream1 (runConduitPure/.|)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:167:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduitPure/.|)" may never fire
      because ‘runConduitPure’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitPure’
    |
167 | {-# RULES "conduit: connectStream1 (runConduitPure/.|)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:170:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduitPure/=$=)" may never fire
      because ‘runConduitPure’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitPure’
    |
170 | {-# RULES "conduit: connectStream1 (runConduitPure/=$=)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:173:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduitPure/fuse)" may never fire
      because ‘fuse’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘fuse’
    |
173 | {-# RULES "conduit: connectStream1 (runConduitPure/fuse)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:173:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduitPure/fuse)" may never fire
      because ‘runConduitPure’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitPure’
    |
173 | {-# RULES "conduit: connectStream1 (runConduitPure/fuse)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:177:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduitRes/.|)" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
177 | {-# RULES "conduit: connectStream1 (runConduitRes/.|)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:177:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduitRes/.|)" may never fire
      because ‘runConduitRes’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitRes’
    |
177 | {-# RULES "conduit: connectStream1 (runConduitRes/.|)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:180:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduitRes/=$=)" may never fire
      because ‘runConduitRes’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitRes’
    |
180 | {-# RULES "conduit: connectStream1 (runConduitRes/=$=)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
src/Data/Conduit/Internal/Fusion.hs:183:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduitRes/fuse)" may never fire
      because ‘fuse’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘fuse’
    |
183 | {-# RULES "conduit: connectStream1 (runConduitRes/fuse)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:183:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream1 (runConduitRes/fuse)" may never fire
      because ‘runConduitRes’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitRes’
    |
183 | {-# RULES "conduit: connectStream1 (runConduitRes/fuse)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:217:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduit/.|)" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
217 | {-# RULES "conduit: connectStream2 (runConduit/.|)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:220:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduit/fuse)" may never fire
      because ‘fuse’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘fuse’
    |
220 | {-# RULES "conduit: connectStream2 (runConduit/fuse)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
src/Data/Conduit/Internal/Fusion.hs:227:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduitPure/.|)" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
227 | {-# RULES "conduit: connectStream2 (runConduitPure/.|)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:227:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduitPure/.|)" may never fire
      because ‘runConduitPure’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitPure’
    |
227 | {-# RULES "conduit: connectStream2 (runConduitPure/.|)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:230:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduitPure/fuse)" may never fire
      because ‘fuse’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘fuse’
    |
230 | {-# RULES "conduit: connectStream2 (runConduitPure/fuse)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:230:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduitPure/fuse)" may never fire
      because ‘runConduitPure’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitPure’
    |
230 | {-# RULES "conduit: connectStream2 (runConduitPure/fuse)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:233:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduitPure/=$=)" may never fire
      because ‘runConduitPure’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitPure’
    |
233 | {-# RULES "conduit: connectStream2 (runConduitPure/=$=)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:237:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduitRes/.|)" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
237 | {-# RULES "conduit: connectStream2 (runConduitRes/.|)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:237:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduitRes/.|)" may never fire
      because ‘runConduitRes’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitRes’
    |
237 | {-# RULES "conduit: connectStream2 (runConduitRes/.|)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:240:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduitRes/fuse)" may never fire
      because ‘fuse’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘fuse’
    |
240 | {-# RULES "conduit: connectStream2 (runConduitRes/fuse)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:240:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduitRes/fuse)" may never fire
      because ‘runConduitRes’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitRes’
    |
240 | {-# RULES "conduit: connectStream2 (runConduitRes/fuse)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

src/Data/Conduit/Internal/Fusion.hs:243:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connectStream2 (runConduitRes/=$=)" may never fire
      because ‘runConduitRes’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘runConduitRes’
    |
243 | {-# RULES "conduit: connectStream2 (runConduitRes/=$=)" forall left right.
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
src/Data/Conduit/List.hs:333:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: $$ fold" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
333 | {-# RULES "conduit: $$ fold" forall src f b. runConduit (src .| fold f b) = connectFold src f b #-}
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/Data/Conduit/List.hs:349:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: $$ foldM" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
349 | {-# RULES "conduit: $$ foldM" forall src f b. runConduit (src .| foldM f b) = connectFoldM src f b #-}
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/Data/Conduit/List.hs:392:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connect to mapM_" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
392 | {-# RULES "conduit: connect to mapM_" [2] forall f src. runConduit (src .| mapM_ f) = srcMapM_ src f #-}
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/Data/Conduit/List.hs:823:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: source/filter fusion .|" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
823 | {-# RULES "conduit: source/filter fusion .|" forall f src. src .| filter f = filterFuseRight src f #-}
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/Data/Conduit/List.hs:847:11: warning: [-Winline-rule-shadowing]
    Rule "conduit: connect to sinkNull" may never fire
      because ‘.|’ might inline first
    Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘.|’
    |
847 | {-# RULES "conduit: connect to sinkNull" forall src. runConduit (src .| sinkNull) = srcSinkNull src #-}
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions