2014-10-07 3 views
1

bug GHC (7.8.0 - 7.8.2)에 존재해야합니다. 나는 우리가 단지 메이저 버전과 마이너 버전 번호를 얻었 기 때문에 __GLASGOW_HASKELL__을 사용할 수 있다고 생각하지 않는다. base 라이브러리 버전을 사용할 수 있지만 (ghc 릴리즈와 관련된 목록을 찾을 수는 없지만 ->base 버전)). 즉 GHC 포인트 릴리즈에 기반한 조건부 컴파일

내가 수행해야합니다

#if GHC < 7.8.3 
    this code 
#else 
    this code 
#endif 
+1

이루어집니다,하지만 당신은 할 수 'ghc --version'을 실행하고 적절한 CPP 인수를 빌드 단계로 전달하는 cabal preConf 훅을 사용하십시오. – user2407038

+0

제안 해 주셔서 감사합니다. 실제로 GHC 7.8.3과 함께 제공된 기본 4.7.0.1처럼 보입니다. CPP 플래그를 설정하기 위해 GHC를 사용할 수 있기를 바랍니다. 누구든지 확인할 수 있습니까? – jberryman

답변

1

내가 어떻게 든 docs이 놓친, 그러나 이것은 쉽게이 아마 매우 해키 보일 것 impl()

library foo 
    ... 
    if impl(ghc >= 7.8.3) 
     cpp-options: -DTRYREADMVAR