2011-07-14 10 views
-6

この警告はどうすれば解決できますか? (私は前にそれをやったことがなかったが、新しいパッケージのインストールでした、そしてそれは今、前の作業パッケージのエラーを与えているようだ。)haskell GHCエラー

Warning: In the use of `isEmptyChan' 
      (imported from Control.Concurrent, but defined in Control.Concurrent.Chan): 
      Deprecated: "if you need this operation, use Control.Concurrent.STM.TChan instead. See http://hackage.haskell.org/trac/ghc/ticket/4154 for details" 
+0

リンク先のチケットを読んだことがありますか? – Richard

+13

Oh come on * *その答えは*警告の中にある*。他の誰かがあなたに何を伝えたいと思いますか? –

+0

かなり厳しい!バグ(警告)は、私のコードではなく、カバルインストールのコードから来たものです。それはFRPの例であった。私は確かにFRPコードに入り、それを書き直そうとは思わない。私は、両方のパッケージにisEmptyChan関数があり、使用するコードのインポートだけが使用される必要があるというメッセージがあると思います。私はいずれかのパッケージに慣れていませんし、それらを使用するFRPソースでもなく、それらを書き直す必要もありません。 – guthrie

答えて

3

を警告が示すように、Control.Concurrent.Chanは今ありますdeprecated

...deprecation is a status applied to software features to indicate that they should be avoided, typically because they have been superseded.

単に指示に従って、代わりにControl.Concurrent.STM.TChanを使用し、警告を回避します。

もちろん、それは単なる警告なので無視することができます。それは間違いなく最良の選択ではありません。これの原因は最近の更新であるはずです。

用語が混乱する可能性があることは完全に理解できます。その場合、GoogleとWikipediaはあなたの親友かもしれません:)

+3

さて、彼は自分のコードではなく、Hackageから何かをインストールしている間に警告を受けている可能性があります。その場合、別のオプションは「バグ管理者」です。 –

+0

@camccann:良い点。私はもっ​​と頻繁に他の人にバグを起こすことができたらいいと思う:) –

+0

@camccann - あなたは正しい。ありがとう。 – guthrie

関連する問題