option (オプション) を phase (コンパイル段階) に渡します。
複数のオプションを渡すには、コンマで区切って指定します。-Q でコンポーネントに渡されるオプションは、順序が変更されることがあります。ドライバが認識するオプションは、正しい順序に保持されます。ドライバがすでに認識しているオプションに、-Q は使わないでください。たとえば C++ コンパイラは、リンカー (ld) に対する -z オプションを認識します。次のようなコマンドを実行したとします。
CC -G -zallextract mylib.a -zdefaultextract ... // correct
-z オプションは、この順序でリンカーに渡されます。一方、次のようなコマンドを指定したとします。
CC -G -Qoption ld -zallextract mylib.a -Qoption ld -zdefaultextract ... // error
-z オプションの順序が変わり、不正な結果が生じる可能性があります。
phase には、次の値のいずれか 1 つを指定します。
表 A–17 -Qoption の値| SPARC | x86 | 
|---|---|
| ccfe | ccfe | 
| iropt | iropt | 
| cg | ube | 
| CClink | CClink | 
| ld | ld | 
| — | ir2hf | 
| fbe | fbe | 
次に示すコマンド行では、ld が CC ドライバによって起動されたとき、-Qoption で指定されたオプションの -i と -m が ld に渡されます。
| example% CC -Qoption ld -i,-m test.c | 
意図しない結果にならないように注意してください。たとえば、次を見てください。
| -Qoption ccfe -features=bool,iddollar | 
しかしこの指定は、意図に反して次のように解釈されてしまいます。
| -Qoption ccfe -features=bool -Qoption ccfe iddollar | 
正しい指定は次のとおりです。
| -Qoption ccfe -features=bool,-features=iddollar |