目次前のトピック次のトピックこのページ |
コンパイラの警告¶コードが改善できるか潜在的なエラーが避けられる箇所をコンパイラが見つけた時に、コンパイラは警告を上げます。 警告はコマンドライン パラメータあるいは恒久的にそれらを有効あるいは無効にするためにconfig.jsonに追加することで、警告を有効にすることができます: -w を前に付けた名前を渡すことで警告を有効にすることができます: zephir -wunused-variable -wnonexistent-function
-W を前につけた名前を渡すことで警告を無効にすることができます: zephir -Wunused-variable -Wnonexistent-function
以下の警告がサポートされます: unused-variable¶変数が宣言されているが、メソッド内で使われていない場合に上げられます。この警告はデフォルトで有効にされています。 public function some()
{
var e; // 宣言されたが使われていない
return false;
}
unused-variable-external¶パラメータが宣言されているが、メソッド内で使われていない場合に上げられます。 public function sum(a, b, c) // c is not used
{
return a + b;
}
possible-wrong-parameter-undefined¶パラメータに関して間違った型を使ってメソッドが呼ばれる時に上げられます: public function some()
{
return this->sum("a string", "another"); // wrong parameters passed
}
public function sum(int a, int b)
{
return a + b;
}
nonexistent-function¶コンパイル時に存在しない関数が呼ばれることで上げられます: public function some()
{
someFunction(); // someFunction が存在しない
}
nonexistent-class¶コンパイル時に存在しないクラスが使われる時に上げられます: public function some()
{
var a;
let a = new \MyClass(); // MyClassが存在しない
}
non-valid-isset¶非配列あるいはオブジェクト値上で ‘isset’ オペレーションが行われることをコンパイラが検知する時に上げられます: public function some()
{
var b = 1.2;
return isset b[0]; // 変数 integer 'b' が配列として使われた
}
non-array-update¶非配列値上で配列の更新オペレーションが行われることをコンパイラが検知する時に上げられます: public function some()
{
var b = 1.2;
let b[0] = true; // 変数 'b' は配列として使うことはできません
}
non-valid-objectupdate¶非オブジェクト上でオブジェクトの更新オペレーションが行われることをコンパイラが検知する時に上げられます: public function some()
{
var b = 1.2;
let b->name = true; // 変数 'b' はオブジェクトとして使うことができません
}
non-valid-fetch¶非配列あるいはオブジェクト値上で ‘fetch’ オペレーションが行われることをコンパイラが検知する時に上げられます: public function some()
{
var b = 1.2, a;
fetch a, b[0]; // 変数 integer 'b' が配列として使われた
}
invalid-array-index¶有効ではない配列のインデックスが使われることをコンパイラが検知する時に上げられます: public function some(var a)
{
var b = [];
let a[b] = true;
}
non-array-append¶非配列変数に要素が追加されようとしていることをコンパイラが検知する時に上げられます: public function some()
{
var b = false;
let b[] = "some value";
}
|