へたくそな説明ですみません。変数に数値は入っているようにみえて、
実際には数値が入っていない事ってあるのでしょうか?

メインとなる「index.cgi」と他のモジュールを分けて使いっています。
最初に別のファイルでPOST/GETデータをエンコードさせ、
「return %hash;」の形で下記ように戻しました。

%reEnc = ENC::enc();

そのファイルを再び下記のように別のファイルに渡しました。

fileLoad::FileSet(\%reEnc);

その後に見た目上は滞りなく処理が進むのですが、
サーバーのログには下記のようにエラーが出てしまいます。
(※確かにエラー行では"reEnc"からデータを取り出し"$value"に入れてます。

index.cgi: Use of uninitialized value $value in string eq at fileLoad/FileSet.pm line *.

当然何かおかしいと思い色々と弄っていたのですが、基本となる「index.cgi」上で、
「%reEnc」のデータを「print」してみたのですが、それは画面上には表示されます。
しかし、if構文で処理させようとすると、その数値が「ない」と判断されてしまいます。

print $reEnc{'pointA'}; ← これは「pointA」の値がちゃんと表示される。
if(!$reEnc{'pointA'}){ print "ない";} ←しかしこの構文では「ない」が表示されてしまう。

でも、何故か表示上は最後まで処理がされてしまうのです。これは一体全体何故でしょうか?
どう考えてもいろいろ駄目な感じはしますが、何カ所かでエラーチェックはかけていますし、
その数値が無ければファイルが呼び出せない「はず」の部分も存在します。
が。何故か処理が進んでしまうのです…。解せぬ。ということで、ご教示願いしまう。