LINUX.ORG.RU

История изменений

Исправление www_linux_org_ru, (текущая версия) :

Если компилятор постоянно ругался бы, то получилось бы такое количество ругани в смешанных (C + С++) проектах, что просто на предупреждения перестали бы обращать внимание.

не думаю

если было бы можно компилировать сишные файлы компилятором си, а плюсовые — компилятором с++, и затем линковать, то все было бы ок

некоторая проблема была бы, если бы в си надо было писать

network_result_t r = do_something(....);
if( !r ){ 
  printf("all ok\n");

а в с++ можно было бы написать

#pragma convert_enum_0_to_bool_true
...
...
...
...
network_result_t r = do_something(....);
if( r ){ 
  printf("all ok\n");

и это только в том случае, когда код тупо копипастился из си, а не транслировался из си в с++ — в случае копипаста он мог бы втихую приобрести баги

короче, идея *синтаксической* совместимости со старьем — ужасна

Исправление www_linux_org_ru, :

Если компилятор постоянно ругался бы, то получилось бы такое количество ругани в смешанных (C + С++) проектах, что просто на предупреждения перестали бы обращать внимание.

не думаю

если было бы можно компилировать сишные файлы компилятором си, а плюсовые — компилятором с++, и затем линковать, то все было бы ок

некоторая проблема была бы, если бы в си надо было писать

network_result_t r = do_something(....);
if( !r ){ 
  printf("all ok\n");

а в с++ можно было бы написать

#pragma convert_enum_0_to_bool_true
...
...
...
...
network_result_t r = do_something(....);
if( r ){ 
  printf("all ok\n");

и это только в том случае, когда код тупо копипастился из си, а не транслировался из си в с++ — в этом случае он мог бы втихую приобрести баги

короче, идея *синтаксической* совместимости со старьем — ужасна

Исправление www_linux_org_ru, :

Если компилятор постоянно ругался бы, то получилось бы такое количество ругани в смешанных (C + С++) проектах, что просто на предупреждения перестали бы обращать внимание.

не думаю

если было бы можно компилировать сишные файлы компилятором си, а плюсовые — компилятором с++, и затем линковать, то все было бы ок

некоторая проблема была бы, если бы в си надо было писать

network_result_t r = do_something(....);
if( !r ){ 
  printf("all ok\n");

а в с++ можно было бы написать

#pragma convert_enum_0_to_bool_true
...
...
...
...
network_result_t r = do_something(....);
if( r ){ 
  printf("all ok\n");

и это только в том случае, когда код тупо копипастился из си, а не транслировался из си в с++

короче, идея *синтаксической* совместимости со старьем — ужасна

Исправление www_linux_org_ru, :

Если компилятор постоянно ругался бы, то получилось бы такое количество ругани в смешанных (C + С++) проектах, что просто на предупреждения перестали бы обращать внимание.

не думаю

если было бы можно компилировать сишные файлы компилятором си, а плюсовые — компилятором с++, и затем линковать, то все было бы ок

некоторая проблема была бы, если бы в си надо было писать

network_result_t r = do_something(....);
if( !r ){ 
  printf("all ok\n");

а в с++ можно было бы написать

network_result_t r = do_something(....);
if( r ){ 
  printf("all ok\n");

и это только в том случае, если бы код тупо копипастился из си, а не транслировался из си в с++

короче, идея *синтаксической* совместимости со старьем — ужасна; совместимость должна быть по семантике — например, по модели памяти

Исходная версия www_linux_org_ru, :

Если компилятор постоянно ругался бы, то получилось бы такое количество ругани в смешанных (C + С++) проектах, что просто на предупреждения перестали бы обращать внимание.

не думаю

если было бы можно компилировать сишные файлы компилятором си, а плюсовые — компилятором с++, и затем линковать, то все было бы ок

некоторая проблема была бы, если бы в си надо было писать

network_result_t r = do_something(....);
if( !r ){ 
  printf("all ok\n");

а в с++ можно было бы написать

network_result_t r = do_something(....);
if( r ){ 
  printf("all ok\n");

и это только в том случае, когда код тупо копипастился из си, а не транслировался из си в с++

короче, идея *синтаксической* совместимости со старьем — ужасна