LINUX.ORG.RU
ФорумTalks

[ненависть] msvc как всегда

 


0

2

Написал некоторую базу кода на линуксе, все собиралось без единого ворнинга с -W3. Стало необходимо портировать это на мастдай, благо, все было на cmake.

В результате - о, УЖАС, - оно ругается на переменную с именем errno, объявленную внутри структуры! Какой-то мудак прописал в SDK

#define errno <......>

и теперь придется переписывать половину кода!

А еще этот великий компилятор ругается на мои макросы, которые на gcc идеально компилируются. В сумме выдает 250 ошибок, мать его, хотя код написан полностью в соответствии с C89!

Как я ненавижу этот сраный виндовз!

★★

>и теперь придется переписывать половину кода!

Уххх какой годный вброс. Неужели все так печально? Просто рефакторингом переименовать название поля уже нельзя?

SebastianPoeiro
()

Сколько попаболи. Это же прекрасно - линукс подыхает на коленях, а его пользователи трясутся приступах ненависти из-за собственной безграмотности, тупости, бессилия.

Darth_Horn
()

> … хотя код написан полностью в соответствии с C89!
> Как я ненавижу этот сраный виндовз!

как я ненавижу этих сраных быдлокодеров с этим сраным чсв…

4.1.3 Errors <errno.h>

   The header <errno.h> defines several macros, all relating to the
reporting of error conditions.

   The macros are 

         EDOM
         ERANGE

which expand to distinct nonzero integral constant expressions; and 

         errno

which expands to a modifiable lvalue/83/ that has type int, the value
of which is set to a positive error number by several library
functions.  It is unspecified whether errno is a macro or an
identifier declared with external linkage.  If a macro definition is
suppressed in order to access an actual object, or a program defines
an external identifier with the name errno, the behavior is
undefined.

© ANSI C89

arsi ★★★★★
()

Ну, выбор msvc/mingw неоднозначный. У меня Qt, например, на msvc жрет меньше памяти, но безбожно течёт в области QGraphicsView. А MinGW изначально жрет больше, но не течёт. Хотя, это скорее проблема Qt.

P.S. Попробуйте в msvc 2005-2008 (2010 не проверял) заинклудить windows.h а потом сразу winsock2.h, много радости получите.

Kosyak ★★★★
()
Ответ на: комментарий от Darth_Horn

> Сколько попаболи. Это же прекрасно - линукс подыхает на коленях, а его пользователи трясутся приступах ненависти из-за собственной безграмотности, тупости, бессилия.

Жги еще, меня забавляют высеры ярых ненавистников линукса.

pevzi ★★★★★
()
Ответ на: комментарий от yoghurt

вроде как раз наоборот: trac-hg.assembla.com/jgears/wiki/ResultsHome

kamre ★★★
()

Я когда-то тоже попался на этом. Как я понял, оно везде макрос, но в венде errno.h притягивается всеми стандартными заголовочными файлами, а в линупсе нет. И, если мне память не изменяет, одинаково, что в мингв, что в мсвц.

staseg ★★★★★
()
Ответ на: комментарий от LongLiveUbuntu

>Здесь gcc и там gcc, разница в хидерах минимальна.

Если надо скомпилить говнокод, напичканный gcc-измами и двусмысленными конструкциями, не соответствующими стандартам, то вариантов нет. В любом другом случае я бы использовал компилятор, который генерит более быстрый код

annulen ★★★★★
()
Ответ на: комментарий от Kosyak

>windows.h

недавно получил от него много радости. Так как M$ ложили одно место на чистоту пространства имен, а также на независимое подключение заголовков, пришлось ввести пространство имен у себя)

annulen ★★★★★
()

Советую ТС завязать с программированием. Плохому танцору, как известно, ...

PayableOnDeath
()

>код написан полностью в соответствии с C89!

Доставило. Побольше таких веселых топиков в толксах.

geekless ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.