#13543: Improve demand analysis for join points -------------------------------------+------------------------------------- Reporter: simonpj | Owner: (none) Type: bug | Status: closed Priority: normal | Milestone: Component: Compiler | Version: 8.0.1 Resolution: fixed | Keywords: JoinPoints Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by alpmestan): OK, I'll include this change in my WIP testsuite expectations changes patch and ask Simon about the "new" expected output (see below for the program & output). {{{#!hs {-# LANGUAGE RankNTypes, GADTs #-} module Foo where g :: (Int, Int) -> Int {-# NOINLINE g #-} g (p,q) = p+q f :: Int -> Int -> Int -> Int f x p q = g (let j y = (p,q) {-# NOINLINE j #-} in case x of 2 -> j 3 _ -> j 4) }}} {{{ ==================== Strictness signatures ==================== Foo.$trModule: m Foo.f: <S(S),1*U(1*U)><S(S),1*U(U)><S(S),1*U(U)>m Foo.g: <S(S(S)S(S)),1*U(1*U(U),1*U(U))>m ==================== Strictness signatures ==================== Foo.$trModule: m Foo.f: <S(S),1*U(1*U)><S(S),1*U(U)><S(S),1*U(U)>m Foo.g: <S(S(S)S(S)),1*U(1*U(U),1*U(U))>m }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13543#comment:6> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler