The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Представлен ARM Compiler 6, перешедший с GCC на Clang, opennews (ok), 10-Апр-14, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


60. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  –3 +/
Сообщение от Myc (??), 10-Апр-14, 15:50 
Пофигу на лицензию. Меня радует, что clang ловит косяки в printf.

# cat qqq.c
#include <stdio.h>
int main(void) {
    unsigned long int a = 1;
    char *s = "qqq";
    printf("%lli %\n", a, s);
    return 0;
}

# gcc -c qqq.c
# gcc -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC)


при этом clang обматерится
# clang -c qqq.c
qqq.c:6:24: warning: format specifies type 'long long' but the argument has type 'unsigned long' [-Wformat]
    printf("%lli %\n", a, s);
            ~~~~       ^
            %lu
qqq.c:6:19: warning: invalid conversion specifier '
' [-Wformat-invalid-specifier]
    printf("%lli %\n", a, s);
                 ~^
2 warnings generated.
# clang -v
Apple LLVM version 5.1 (clang-503.0.38) (based on LLVM 3.4svn)
Target: x86_64-apple-darwin13.1.0
Thread model: posix

Ответить | Правка | Наверх | Cообщить модератору

61. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +1 +/
Сообщение от chinarulezzz (ok), 10-Апр-14, 16:44 
делай -Wall -Werror
Ответить | Правка | Наверх | Cообщить модератору

62. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +1 +/
Сообщение от Аноним (-), 10-Апр-14, 16:49 
# gcc -c test.c
./test.c: В функции «main»:
./test.c:5:5: предупреждение: format «%lli» expects argument of type «long long int», but argument 2 has type «long unsigned int» [-Wformat]
./test.c:5:5: предупреждение: неопознанный символ преобразования 0xa в формате [-Wformat]
Ответить | Правка | К родителю #60 | Наверх | Cообщить модератору

63. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +/
Сообщение от Аноним (-), 10-Апр-14, 16:50 
> # gcc -c test.c
> ./test.c: В функции «main»:
> ./test.c:5:5: предупреждение: format «%lli» expects argument of type «long
> long int», but argument 2 has type «long unsigned int» [-Wformat]
> ./test.c:5:5: предупреждение: неопознанный символ преобразования 0xa в формате [-Wformat]

У меня поновее GCC, правда, 4.6.3.

Ответить | Правка | Наверх | Cообщить модератору

65. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +2 +/
Сообщение от arisu (ok), 10-Апр-14, 16:58 
ты бы это… egcs 2.95 взял, он ещё круче. и ворнинги у gcc ни в коем случае включать не надо: пусть, зараза, сам догадается, чего ты от него хочешь!

gcc -o z0 -Wall z0.c
z0.c: In function 'main':
z0.c:5:5: warning: format '%lli' expects argument of type 'long long int', but argument 2 has type 'long unsigned int' [-Wformat=]
z0.c:5:5: warning: unknown conversion type character 0xa in format [-Wformat=]
z0.c:5:5: warning: too many arguments for format [-Wformat-extra-args]

Ответить | Правка | К родителю #60 | Наверх | Cообщить модератору

66. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +4 +/
Сообщение от arisu (ok), 10-Апр-14, 16:59 
p.s. таковы все хипсторы-любители шланготы: мечтают, что их проблему «руки из задницы» можно вылечить программно.
Ответить | Правка | К родителю #60 | Наверх | Cообщить модератору

78. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +2 +/
Сообщение от rob pike (?), 10-Апр-14, 18:35 
Зажрались.
Дать бы вам.. MPLAB XC16, чтоб вволю глюков половили. В кодогенераторе.
А не фигней страдали с тем что компилятор вам попу не вытирает.
Ответить | Правка | К родителю #60 | Наверх | Cообщить модератору

171. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +/
Сообщение от Аноним (-), 11-Апр-14, 15:01 
> Дать бы вам.. MPLAB XC16, чтоб вволю глюков половили. В кодогенераторе.

У вас был выбор. Вы выбрали вляпаться в проприетарь. Сами виноваты.

p.s. а avr-gcc например генерит вполне приличный код в целом.


Ответить | Правка | Наверх | Cообщить модератору

187. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +/
Сообщение от rob pike (?), 11-Апр-14, 19:20 
>> Дать бы вам.. MPLAB XC16, чтоб вволю глюков половили. В кодогенераторе.
> У вас был выбор. Вы выбрали вляпаться в проприетарь. Сами виноваты.

Да никаких проблем. Особенно с таким-то ASM30.

> p.s. а avr-gcc например генерит вполне приличный код в целом.

Да, Atmel известен своей открытостью, толку-то.
Аналог dsPIC мне покажите, например, от них. Хотя бы приблизительный.


Ответить | Правка | Наверх | Cообщить модератору

225. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +/
Сообщение от Аноним (-), 14-Апр-14, 15:22 
> Да никаких проблем. Особенно с таким-то ASM30.

Кому как. Для меня отсутствие исходников компилера и неработоспособность в линухе без костылей - проблема. Ибо я сам себе не враг, а идея потратить время на освоение проприетарного компилера, отсандалив кучу денег из своего кармана и создав себе уйму неудобств - меня как-то не радует. Да, вот такой вот я нехороший, хочу чтобы мне было удобно и не очень хочу платить за неудобства на ровном месте. Это странно?

> Да, Atmel известен своей открытостью, толку-то.

Ну я не помню, имеет атмел какое-то отношение к avr-gcc или нет, но в целом этот гцц генерит довольно приличный код, работает под удобной мне системой и являет собой уже знакомый мне тулчейн, к которому я знаю с какого бока подойти.

> Аналог dsPIC мне покажите, например, от них. Хотя бы приблизительный.

Если честно, я вообще смысла в dsPIC не понимаю. Кому надо специализированный сигнальник, чтобы долбить оптом - этого уродца всяко мало. А неспециализированный - так и остальные нынче вроде весьма приличные в этом плане. Атмел для меня простая и сильная дергалка лапками на скорость. Заставлять атмелку считать что-то оптом я и не собирался никогда. А если считать надо побольше, есть навалом cortex'ов, на все вкусы и калибры, даже на пару сотен МГц и с аппаратной плавучкой, такие с не очень крутым сигнальником зарубятся, пожалуй. А менее крутые - по цене менее доллара в мелкооптовой партии. Вплоть до cortex M3, с честными 32-битными MIPSами и уймой периферии, типа таймеров, которые хошь PWM, хошь motor control с комплементарным выходом и dead time.

Ответить | Правка | Наверх | Cообщить модератору

89. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +1 +/
Сообщение от Аноним (-), 10-Апр-14, 19:12 

$ gcc test.c
test.c: In function ‘main’:
test.c:5:5: warning: format ‘%lli’ expects argument of type ‘long long int’, but argument 2 has type ‘long unsigned int’ [-Wformat=]
     printf("%lli %\n", a, s);
     ^
test.c:5:5: warning: unknown conversion type character 0xa in format [-Wformat=]
test.c:5:5: warning: too many arguments for format [-Wformat-extra-args]

GCC 4.8, все по дефолту. А зачем мне какой-то gcc 4.4, при текущем 4.8 и вот-вот выходящем 4.9? В 4.7 и 4.8 сделали довольно могучую link-time оптимизацию кода (LTO). Код и компактнее (может сдуться на четверть и даже больше!) и шустрее (иногда).
Ответить | Правка | К родителю #60 | Наверх | Cообщить модератору

96. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +1 +/
Сообщение от arisu (ok), 10-Апр-14, 19:34 
> А зачем мне какой-то gcc 4.4

макохипсторам другой не дают. а сами они ставить не умеют.

Ответить | Правка | Наверх | Cообщить модератору

120. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +1 +/
Сообщение от Аноним (-), 10-Апр-14, 22:12 
> макохипсторам другой не дают. а сами они ставить не умеют.

Да у них в системе все делается стандартным методом - через зaдницy. Поэтому этой системой пользуются пи...сы. Нет, не геи, а именно отборные пи...сы.

Ответить | Правка | Наверх | Cообщить модератору

166. "Представлен ARM Compiler 6, перешедший с GCC на Clang"  +1 +/
Сообщение от dq0s4y71 (ok), 11-Апр-14, 14:42 
Если у вас косяки в printf, то вам не надо писать на Си. Пишите на Питоне.
Ответить | Правка | К родителю #60 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру