Софтверно-инженерное
Jun. 5th, 2007 06:17 pmБерем GCC. Читаем список ключей командной строки.
Видим -fdollars-in-identifiers Allow the use of $ inside identifiers
который там далеко не вчера появился. Пишем
#include <stdio.h>
char
$foo[] = "Hello, world?";
main() {
puts($foo);
}
Компилируем это дело на интеловской платформе (у меня даже без вышеупомянутого ключа компилируется), запускаем - работает. Добавляем в программу первым оператором
$foo[12] = '!';
и получаем... что?
Оценка за этот тест равна 5 минус количество запусков компилятора, которое вам потребуется, чтобы объяснить явление.
Видим -fdollars-in-identifiers Allow the use of $ inside identifiers
который там далеко не вчера появился. Пишем
#include <stdio.h>
char
$foo[] = "Hello, world?";
main() {
puts($foo);
}
Компилируем это дело на интеловской платформе (у меня даже без вышеупомянутого ключа компилируется), запускаем - работает. Добавляем в программу первым оператором
$foo[12] = '!';
и получаем... что?
Оценка за этот тест равна 5 минус количество запусков компилятора, которое вам потребуется, чтобы объяснить явление.
no subject
Date: 2007-06-06 01:35 am (UTC)/tmp/ccY3JzFw.s:18: Error: suffix or operands invalid for `mov'
no subject
Date: 2007-06-06 01:37 am (UTC)no subject
Date: 2007-06-06 01:38 am (UTC)Я запускал компилятор дважды, второй раз с -save-temps.
no subject
Date: 2007-06-06 01:45 am (UTC)no subject
Date: 2007-06-06 01:37 am (UTC)foo.s: Assembler messages:
foo.s:18: Error: suffix or operands invalid for `mov'
movb $33, $foo+12
no subject
Date: 2007-06-06 01:52 am (UTC)no subject
Date: 2007-06-06 01:58 am (UTC)char
$foo[] = "Hello, world?";
и в первый раз все будет работать.
no subject
Date: 2007-06-06 02:00 am (UTC)no subject
Date: 2007-06-06 02:05 am (UTC)no subject
Date: 2007-06-06 02:22 am (UTC)no subject
Date: 2007-06-06 02:26 am (UTC)no subject
Date: 2007-06-06 02:29 am (UTC)no subject
Date: 2007-06-06 02:36 am (UTC)no subject
Date: 2007-06-06 05:41 am (UTC)no subject
Date: 2007-06-06 05:47 am (UTC)no subject
Date: 2007-06-06 05:47 am (UTC)no subject
Date: 2007-06-06 02:38 am (UTC)no subject
Date: 2007-06-06 02:56 am (UTC)no subject
Date: 2007-06-06 03:42 am (UTC)no subject
Date: 2007-06-06 06:41 am (UTC)no subject
Date: 2007-06-06 02:33 pm (UTC)Hello, world!
Кстати, никаких спец ключей применено не было.
no subject
Date: 2007-06-06 02:51 pm (UTC)no subject
Date: 2007-06-06 03:07 pm (UTC)