Last Update 2020/12/29
-fno-asmオプション
asm、inline、typeofをキーワードから除外。
__asm__、__inline__、 __typeof__で代用可能
__asm__、__inline__、 __typeof__で代用可能
テスト結果リスト(コンパイル実行結果)
asm、inline、typeof をキーワードとして記述したコードと、
識別子として記述したコードを、4種の言語標準にて各々コンパイルを実行
-fno-asm | c90 | c99 | gnu90 | gnu99 |
無し | FAIL | FAIL | PASS | PASS |
有り | FAIL | FAIL | FAIL | FAIL |
-fno-asm | c90 | c99 | gnu90 | gnu99 |
無し | PASS | PASS | FAIL | FAIL |
有り | PASS | PASS | PASS | PASS |
-fno-asm | c90 | c99 | gnu90 | gnu99 |
無し | FAIL | PASS | PASS | PASS |
有り | FAIL | PASS | FAIL | PASS |
-fno-asm | c90 | c99 | gnu90 | gnu99 |
無し | PASS | FAIL | FAIL | FAIL |
有り | PASS | FAIL | PASS | FAIL |
-fno-asm | c90 | c99 | gnu90 | gnu99 |
無し | FAIL | FAIL | PASS | PASS |
有り | FAIL | FAIL | FAIL | FAIL |
-fno-asm | c90 | c99 | gnu90 | gnu99 |
無し | PASS | PASS | FAIL | FAIL |
有り | PASS | PASS | PASS | PASS |
実行環境
GCC-8.2.0
GNU C Library 2.28
GNU Binutils 2.31.1
GNU C Library 2.28
GNU Binutils 2.31.1
コード例・出力内容中の表記
・実行例中の太字表記部分は、コマンドなどの入力された文字列を示します。
・「︙」や「...」の着色省略表記は、 実際のソースコードや出力内容などを省略加工した部分を示します。
・「︙」や「...」の着色省略表記は、 実際のソースコードや出力内容などを省略加工した部分を示します。
sample1.c
/* -fno-asm オプション動作確認用ソースファイル(1) */
#include <stdio.h>
int main(void)
{
asm("/* asm */"); /* asmの使用 */
__asm__("/* __asm__ */"); /* __asm__の使用 */
printf("-fno-asm オプション動作確認用ソースファイル\n");
return 0;
}
-fno-asm無しでコンパイル実行
$ gcc -v -std=c90 sample1.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample1.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccPmbbBf.o /tmp/ccRq8RmF.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
/usr/bin/ld: /tmp/ccPmbbBf.o: in function `main':
sample1.c:(.text+0xf): undefined reference to `asm' asm の未定義エラー
collect2: error: ld returned 1 exit status
エラー発生・停止
$ gcc -v -std=c99 sample1.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample1.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample1.c: In function ‘main’:
sample1.c:7:2: warning: implicit declaration of function ‘asm’ [-Wimplicit-function-declaration]
asm("/* asm */"); /* asmの使用 */ 関数 asm の暗黙宣言警告
^~~
COLLECT_GCC_OPTIONS='-v' '-std=c99' '-mtune=generic' '-march=x86-64'
as -v --64 -o /tmp/ccvf37mW.o /tmp/ccrI5nFA.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
/usr/bin/ld: /tmp/ccvf37mW.o: in function `main':
sample1.c:(.text+0xf): undefined reference to `asm' asm の未定義エラー
collect2: error: ld returned 1 exit status
エラー発生・停止
$ gcc -v -std=gnu90 sample1.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample1.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccLk9htR.o /tmp/ccJuGbh4.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu90' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu99 sample1.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample1.c ... -std=gnu99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccoLprvV.o /tmp/ccKE136k.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu99' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
コンパイル終了・実行ファイル生成
-fno-asm有りでコンパイル実行
$ gcc -v -std=c90 -fno-asm sample1.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample1.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccIEQyT9.o /tmp/ccfvQMaD.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
/usr/bin/ld: /tmp/ccIEQyT9.o: in function `main':
sample1.c:(.text+0xf): undefined reference to `asm' asm の未定義エラー
collect2: error: ld returned 1 exit status
エラー発生・停止
$ gcc -v -std=c99 -fno-asm sample1.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample1.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample1.c: In function ‘main’:
sample1.c:7:2: warning: implicit declaration of function ‘asm’ [-Wimplicit-function-declaration]
asm("/* asm */"); /* asmの使用 */ 関数 asm の暗黙宣言警告
^~~
COLLECT_GCC_OPTIONS='-v' '-std=c99' '-fno-asm' '-mtune=generic' '-march=x86-64'
as -v --64 -o /tmp/ccbSW3FI.o /tmp/ccnrYFhZ.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
/usr/bin/ld: /tmp/ccbSW3FI.o: in function `main':
sample1.c:(.text+0xf): undefined reference to `asm' asm の未定義エラー
collect2: error: ld returned 1 exit status
エラー発生・停止
$ gcc -v -std=gnu90 -fno-asm sample1.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample1.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccV0X6yW.o /tmp/cc7mjOW1.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
/usr/bin/ld: /tmp/ccV0X6yW.o: in function `main':
sample1.c:(.text+0xf): undefined reference to `asm' asm の未定義エラー
collect2: error: ld returned 1 exit status
エラー発生・停止
$ gcc -v -std=gnu99 -fno-asm sample1.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample1.c ... -std=gnu99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample1.c: In function ‘main’:
sample1.c:7:2: warning: implicit declaration of function ‘asm’ [-Wimplicit-function-declaration]
asm("/* asm */"); /* asmの使用 */ 関数 asm の暗黙宣言警告
^~~
COLLECT_GCC_OPTIONS='-v' '-std=gnu99' '-fno-asm' '-mtune=generic' '-march=x86-64'
as -v --64 -o /tmp/ccd2femf.o /tmp/ccmiNmPg.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
/usr/bin/ld: /tmp/ccd2femf.o: in function `main':
sample1.c:(.text+0xf): undefined reference to `asm' asm の未定義エラー
collect2: error: ld returned 1 exit status
sample2.c
/* -fno-asm オプション動作確認用ソースファイル(2) */
#include <stdio.h>
int main(void)
{
int asm; /* asmの識別子として使用 */
__asm__("/* __asm__ */"); /* __asm__の使用 */
asm = 1;
printf("-fno-asm オプション動作確認用ソースファイル\n");
printf("asm = %d\n", asm);
return 0;
}
-fno-asm無しでコンパイル実行
$ gcc -v -std=c90 sample2.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample2.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/cckqYH04.o /tmp/ccqeRlVh.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c90' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
asm = 1
コンパイル終了・実行ファイル生成
$ gcc -v -std=c99 sample2.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample2.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccoqqQiW.o /tmp/ccNx6YdD.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c99' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
asm = 1
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu90 sample2.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample2.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample2.c: In function ‘main’:
sample2.c:7:6: error: expected identifier or ‘(’ before ‘asm’ asm がキーワードと認識されエラー発生
int asm; /* asmの識別子として使用 */
^~~
sample2.c:10:6: error: expected ‘(’ before ‘=’ token
asm = 1;
^
(
sample2.c:10:6: error: expected expression before ‘=’ token
sample2.c:13:23: error: expected expression before ‘asm’
printf("asm = %d\n", asm);
^~~
エラー発生・停止
$ gcc -v -std=gnu99 sample2.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample2.c ... -std=gnu99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample2.c: In function ‘main’:
sample2.c:7:6: error: expected identifier or ‘(’ before ‘asm’ asm がキーワードと認識されエラー発生
int asm; /* asmの識別子として使用 */
^~~
sample2.c:10:6: error: expected ‘(’ before ‘=’ token
asm = 1;
^
(
sample2.c:10:6: error: expected expression before ‘=’ token
sample2.c:13:23: error: expected expression before ‘asm’
printf("asm = %d\n", asm);
^~~
エラー発生・停止
-fno-asm有りでコンパイル実行
$ gcc -v -std=c90 -fno-asm sample2.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample2.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccvhOsPg.o /tmp/ccK65r3L.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c90' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
asm = 1
コンパイル終了・実行ファイル生成
$ gcc -v -std=c99 -fno-asm sample2.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample2.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccik2QEG.o /tmp/ccc0GIkU.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c99' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
asm = 1
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu90 -fno-asm sample2.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample2.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccByKZJF.o /tmp/ccDHzK86.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu90' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
asm = 1
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu99 -fno-asm sample2.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample2.c ... -std=gnu99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccdVC2hL.o /tmp/ccOFRrLv.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu99' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
asm = 1
コンパイル終了・実行ファイル生成
sample3.c
/* -fno-asm オプション動作確認用ソースファイル(3) */
#include <stdio.h>
static inline int sampFunc1(void) /* inlineの使用 */
{
return 1;
}
static __inline__ int sampFunc2(void) /* __inline__の使用 */
{
return 2;
}
int main(void)
{
printf("-fno-asm オプション動作確認用ソースファイル\n");
printf("sampFunc1 = %d\n", sampFunc1());
printf("sampFunc2 = %d\n", sampFunc2());
return 0;
}
-fno-asm無しでコンパイル実行
$ gcc -v -std=c90 sample3.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample3.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 84637943c330ccfe91c8483610cbfda9
sample3.c:5:14: error: expected ‘;’ before ‘int’
static inline int sampFunc1(void) /* inlineの使用 */ inline がキーワードと認識されずエラー発生
^~~~
;
エラー発生・停止
$ gcc -v -std=c99 sample3.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample3.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccG81F4o.o /tmp/ccQrcZGi.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c99' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
sampFunc1 = 1
sampFunc2 = 2
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu90 sample3.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample3.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccI1Zgzk.o /tmp/cc79iMCB.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu90' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
sampFunc1 = 1
sampFunc2 = 2
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu99 sample3.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample3.c ... -std=gnu99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccljg3li.o /tmp/ccgMY5DJ.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu99' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
sampFunc1 = 1
sampFunc2 = 2
コンパイル終了・実行ファイル生成
-fno-asm有りでコンパイル実行
$ gcc -v -std=c90 -fno-asm sample3.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample3.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample3.c:5:14: error: expected ‘;’ before ‘int’
static inline int sampFunc1(void) /* inlineの使用 */ inline がキーワードと認識されずエラー発生
^~~~
;
エラー発生・停止
$ gcc -v -std=c99 -fno-asm sample3.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample3.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/cc621prJ.o /tmp/ccQoJABZ.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c99' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
sampFunc1 = 1
sampFunc2 = 2
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu90 -fno-asm sample3.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample3.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample3.c:5:14: error: expected ‘;’ before ‘int’
static inline int sampFunc1(void) /* inlineの使用 */ inline がキーワードと認識されずエラー発生
^~~~
;
エラー発生・停止
$ gcc -v -std=gnu99 -fno-asm sample3.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample3.c ... -std=gnu99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/cc1vfVek.o /tmp/ccvOIVgi.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu99' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
sampFunc1 = 1
sampFunc2 = 2
コンパイル終了・実行ファイル生成
sample4.c
/* -fno-asm オプション動作確認用ソースファイル(4) */
#include <stdio.h>
static __inline__ int sampFunc(void) /* __inline__の使用 */
{
return 1;
}
int main(void)
{
int inline; /* inlineの識別子として使用 */
inline = 10;
printf("-fno-asm オプション動作確認用ソースファイル\n");
printf("inline = %d\n", inline);
printf("sampFunc = %d\n", sampFunc());
return 0;
}
-fno-asm無しでコンパイル実行
$ gcc -v -std=c90 sample4.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample4.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/cck6PwcD.o /tmp/ccHn8GzA.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c90' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
inline = 10
sampFunc = 1
コンパイル終了・実行ファイル生成
$ gcc -v -std=c99 sample4.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample4.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample4.c: In function ‘main’:
sample4.c:13:2: warning: useless type name in empty declaration
int inline; /* inlineの識別子として使用 */ inline がキーワードと認識され警告・エラー発生
^~~
sample4.c:13:2: error: ‘inline’ in empty declaration
sample4.c:15:9: error: expected identifier or ‘(’ before ‘=’ token
inline = 10;
^
sample4.c:18:26: error: expected expression before ‘inline’
printf("inline = %d\n", inline);
^~~~~~
エラー発生・停止
$ gcc -v -std=gnu90 sample4.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample4.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample4.c: In function ‘main’:
sample4.c:13:2: warning: useless type name in empty declaration
int inline; /* inlineの識別子として使用 */ inline がキーワードと認識され警告・エラー発生
^~~
sample4.c:13:2: error: ‘inline’ in empty declaration
sample4.c:15:9: error: expected identifier or ‘(’ before ‘=’ token
inline = 10;
^
sample4.c:18:26: error: expected expression before ‘inline’
printf("inline = %d\n", inline);
^~~~~~
エラー発生・停止
$ gcc -v -std=gnu99 sample4.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample4.c ... -std=gnu99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample4.c: In function ‘main’:
sample4.c:13:2: warning: useless type name in empty declaration
int inline; /* inlineの識別子として使用 */ inline がキーワードと認識され警告・エラー発生
^~~
sample4.c:13:2: error: ‘inline’ in empty declaration
sample4.c:15:9: error: expected identifier or ‘(’ before ‘=’ token
inline = 10;
^
sample4.c:18:26: error: expected expression before ‘inline’
printf("inline = %d\n", inline);
^~~~~~
エラー発生・停止
-fno-asm有りでコンパイル実行
$ gcc -v -std=c90 -fno-asm sample4.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample4.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/cc4nib8Q.o /tmp/cc5o3I11.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c90' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
inline = 10
sampFunc = 1
コンパイル終了・実行ファイル生成
$ gcc -v -std=c99 -fno-asm sample4.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample4.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample4.c: In function ‘main’:
sample4.c:13:2: warning: useless type name in empty declaration
int inline; /* inlineの識別子として使用 */ inline がキーワードと認識され警告・エラー発生
^~~
sample4.c:13:2: error: ‘inline’ in empty declaration
sample4.c:15:9: error: expected identifier or ‘(’ before ‘=’ token
inline = 10;
^
sample4.c:18:26: error: expected expression before ‘inline’
printf("inline = %d\n", inline);
^~~~~~
エラー発生・停止
$ gcc -v -std=gnu90 -fno-asm sample4.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample4.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccEhKw3A.o /tmp/ccnogzXc.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu90' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
inline = 10
sampFunc = 1
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu99 -fno-asm sample4.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample4.c ... -std=gnu99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample4.c: In function ‘main’:
sample4.c:13:2: warning: useless type name in empty declaration
int inline; /* inlineの識別子として使用 */ inline がキーワードと認識され警告・エラー発生
^~~
sample4.c:13:2: error: ‘inline’ in empty declaration
sample4.c:15:9: error: expected identifier or ‘(’ before ‘=’ token
inline = 10;
^
sample4.c:18:26: error: expected expression before ‘inline’
printf("inline = %d\n", inline);
^~~~~~
エラー発生・停止
$
sample5.c
/* -fno-asm オプション動作確認用ソースファイル(5) */
#include <stdio.h>
int main(void)
{
int i;
typeof (int *) p1; /* typeofの使用 */
__typeof__ (int *) p2; /* __typeof__の使用 */
i = 100;
p1 = &i;
p2 = &i;
printf("-fno-asm オプション動作確認用ソースファイル\n");
printf("*p1 = %d\n", *p1);
printf("*p2 = %d\n", *p2);
return 0;
}
-fno-asm無しでコンパイル実行
$ gcc -v -std=c90 sample5.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample5.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample5.c: In function ‘main’:
sample5.c:8:10: error: expected expression before ‘int’
typeof (int *) p1; /* typeofの使用 */ typeof がキーワードと認識されずエラー発生
^~~
sample5.c:8:16: error: expected ‘;’ before ‘p1’
typeof (int *) p1; /* typeofの使用 */
^~~
;
sample5.c:12:2: error: ‘p1’ undeclared (first use in this function); did you mean ‘p2’?
p1 = &i;
^~
p2
sample5.c:12:2: note: each undeclared identifier is reported only once for each function it appears in
エラー発生・停止
$ gcc -v -std=c99 sample5.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample5.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample5.c: In function ‘main’:
sample5.c:8:2: warning: implicit declaration of function ‘typeof’; did you mean ‘feof’? [-Wimplicit-function-declaration]
typeof (int *) p1; /* typeofの使用 */ typeof がキーワードと認識されず警告・エラー発生
^~~~~~
feof
sample5.c:8:10: error: expected expression before ‘int’
typeof (int *) p1; /* typeofの使用 */
^~~
sample5.c:8:16: error: expected ‘;’ before ‘p1’
typeof (int *) p1; /* typeofの使用 */
^~~
;
sample5.c:12:2: error: ‘p1’ undeclared (first use in this function); did you mean ‘p2’?
p1 = &i;
^~
p2
sample5.c:12:2: note: each undeclared identifier is reported only once for each function it appears in
エラー発生・停止
$ gcc -v -std=gnu90 sample5.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample5.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccIi6S26.o /tmp/cc6PRzPs.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu90' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
*p1 = 100
*p2 = 100
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu99 sample5.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample5.c ... sample5 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccdAe3sv.o /tmp/ccIRr7fG.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 -plugin ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu99' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
*p1 = 100
*p2 = 100
コンパイル終了・実行ファイル生成
-fno-asm有りでコンパイル実行
$ gcc -v -std=c90 -fno-asm sample5.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample5.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample5.c: In function ‘main’:
sample5.c:8:10: error: expected expression before ‘int’
typeof (int *) p1; /* typeofの使用 */ typeof がキーワードと認識されずエラー発生
^~~
sample5.c:8:16: error: expected ‘;’ before ‘p1’
typeof (int *) p1; /* typeofの使用 */
^~~
;
sample5.c:12:2: error: ‘p1’ undeclared (first use in this function); did you mean ‘p2’?
p1 = &i;
^~
p2
sample5.c:12:2: note: each undeclared identifier is reported only once for each function it appears in
エラー発生・停止
$ gcc -v -std=c99 -fno-asm sample5.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample5.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample5.c: In function ‘main’:
sample5.c:8:2: warning: implicit declaration of function ‘typeof’; did you mean ‘feof’? [-Wimplicit-function-declaration]
typeof (int *) p1; /* typeofの使用 */ typeof がキーワードと認識されず警告・エラー発生
^~~~~~
feof
sample5.c:8:10: error: expected expression before ‘int’
typeof (int *) p1; /* typeofの使用 */
^~~
sample5.c:8:16: error: expected ‘;’ before ‘p1’
typeof (int *) p1; /* typeofの使用 */
^~~
;
sample5.c:12:2: error: ‘p1’ undeclared (first use in this function); did you mean ‘p2’?
p1 = &i;
^~
p2
sample5.c:12:2: note: each undeclared identifier is reported only once for each function it appears in
エラー発生・停止
$ gcc -v -std=gnu90 -fno-asm sample5.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample5.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample5.c: In function ‘main’:
sample5.c:8:10: error: expected expression before ‘int’
typeof (int *) p1; /* typeofの使用 */ typeof がキーワードと認識されずエラー発生
^~~
sample5.c:8:16: error: expected ‘;’ before ‘p1’
typeof (int *) p1; /* typeofの使用 */
^~~
;
sample5.c:12:2: error: ‘p1’ undeclared (first use in this function); did you mean ‘p2’?
p1 = &i;
^~
p2
sample5.c:12:2: note: each undeclared identifier is reported only once for each function it appears in
エラー発生・停止
$ gcc -v -std=gnu99 -fno-asm sample5.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample5.c -quiet -dumpbase sample5.c -mtune=generic -march=x86-64 -auxbase sample5 -std=gnu99 -version -fno-asm -o /tmp/ccyujfXv.s
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample5.c: In function ‘main’:
sample5.c:8:2: warning: implicit declaration of function ‘typeof’; did you mean ‘feof’? [-Wimplicit-function-declaration]
typeof (int *) p1; /* typeofの使用 */ typeof がキーワードと認識されず警告・エラー発生
^~~~~~
feof
sample5.c:8:10: error: expected expression before ‘int’
typeof (int *) p1; /* typeofの使用 */
^~~
sample5.c:8:16: error: expected ‘;’ before ‘p1’
typeof (int *) p1; /* typeofの使用 */
^~~
;
sample5.c:12:2: error: ‘p1’ undeclared (first use in this function); did you mean ‘p2’?
p1 = &i;
^~
p2
sample5.c:12:2: note: each undeclared identifier is reported only once for each function it appears in
エラー発生・停止
$
sample6.c
/* -fno-asm オプション動作確認用ソースファイル(6) */
#include <stdio.h>
int main(void)
{
int i;
int typeof; /* typeofを識別子として使用 */
__typeof__ (int *) p1; /* __typeof__の使用 */
i = 100;
typeof = 20;
p1 = &i;
printf("-fno-asm オプション動作確認用ソースファイル\n");
printf("typeof = %d\n", typeof);
printf("*p1 = %d\n", *p1);
return 0;
}
-fno-asm無しでコンパイル実行
$ gcc -v -std=c90 sample6.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample6.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/cc3E3Oa5.o /tmp/ccvJnga7.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c90' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
typeof = 20
*p1 = 100
コンパイル終了・実行ファイル生成
$ gcc -v -std=c99 sample6.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample6.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/cc1j02i0.o /tmp/ccSx4UyU.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c99' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
typeof = 20
*p1 = 100
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu90 sample6.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample6.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample6.c: In function ‘main’:
sample6.c:8:6: error: expected identifier or ‘(’ before ‘typeof’
int typeof; /* typeofを識別子として使用 */ typeof がキーワードと認識されエラー発生
^~~~~~
sample6.c:13:9: error: expected ‘(’ before ‘=’ token
typeof = 20;
^
(
sample6.c:17:26: error: expected expression before ‘typeof’
printf("typeof = %d\n", typeof);
^~~~~~
エラー発生・停止
$ gcc -v -std=gnu99 sample6.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample6.c ... -std=gnu99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
sample6.c: In function ‘main’:
sample6.c:8:6: error: expected identifier or ‘(’ before ‘typeof’
int typeof; /* typeofを識別子として使用 */ typeof がキーワードと認識されエラー発生
^~~~~~
sample6.c:13:9: error: expected ‘(’ before ‘=’ token
typeof = 20;
^
(
sample6.c:17:26: error: expected expression before ‘typeof’
printf("typeof = %d\n", typeof);
^~~~~~
エラー発生・停止
-fno-asm有りでコンパイル実行
$ gcc -v -std=c90 -fno-asm sample6.c <--- 言語標準をc90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample6.c ... -std=c90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccsqkJGw.o /tmp/cciXGjNr.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c90' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
typeof = 20
*p1 = 100
コンパイル終了・実行ファイル生成
$ gcc -v -std=c99 -fno-asm sample6.c <--- 言語標準をc99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample6.c ... -std=c99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccMY0F5g.o /tmp/cc2TH3fO.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=c99' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
typeof = 20
*p1 = 100
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu90 -fno-asm sample6.c <--- 言語標準をgnu90と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample6.c ... -std=gnu90 ...
︙
GNU C89 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/cca7VoOe.o /tmp/cc7egcWQ.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu90' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
typeof = 20
*p1 = 100
コンパイル終了・実行ファイル生成
$ gcc -v -std=gnu99 -fno-asm sample6.c <--- 言語標準をgnu99と指定
Using built-in specs.
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/cc1 -quiet -v sample6.c ... -std=gnu99 ...
︙
GNU C99 (GCC) version 8.2.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 8.2.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version none
︙
as -v --64 -o /tmp/ccdRrGFo.o /tmp/cc0VmFiK.s
︙
/usr/libexec/gcc/x86_64-pc-linux-gnu/8.2.0/collect2 ...
COLLECT_GCC_OPTIONS='-v' '-std=gnu99' '-fno-asm' '-mtune=generic' '-march=x86-64'
$ ./a.out
-fno-asm オプション動作確認用ソースファイル
typeof = 20
*p1 = 100
コンパイル終了・実行ファイル生成
$