Size: a a a

cxx.Дискуссионная

2020 March 05

R

Ruben in cxx.Дискуссионная
сегодня влип в такую ошибку любопытную. Назвал глобальную переменную bool open; В глобальной области видимости. Она была нужна для отладки, я планировал её удалить. Про конфликт имен с open() я не подумал, а компилятор промолчал. В итоге приложение начало крешиться в непонятных местах.
Потратил пару часов на разборки что происходит (это ембед, отладки нормальной нет). Оказалось, что эта переменная походу слинковалась вместо функции и вызывалась как сисколл open()
источник

R

Ruben in cxx.Дискуссионная
Больше всего удивляет, что компиллер не ругнулся.
источник

IZ

Ilia Zviagin in cxx.Дискуссионная
Ruben
Больше всего удивляет, что компиллер не ругнулся.
Ну, это типичный случай..
источник

W

Wild_Wind in cxx.Дискуссионная
Ruben
Больше всего удивляет, что компиллер не ругнулся.
А если бы юзал стат.анализаторы, то тебя бы завалило матами о твоей криворукости.
источник

R

Ruben in cxx.Дискуссионная
под 4 gcc вроде не завели санитайзеры
источник

R

Ruben in cxx.Дискуссионная
это ембед, будь он не ладен. Проприетарный SoC с тулчейном от производителя
источник

W

Wild_Wind in cxx.Дискуссионная
Ruben
под 4 gcc вроде не завели санитайзеры
О_опять легаси...
Сочувствую.
источник

IZ

Ilia Zviagin in cxx.Дискуссионная
Ruben
сегодня влип в такую ошибку любопытную. Назвал глобальную переменную bool open; В глобальной области видимости. Она была нужна для отладки, я планировал её удалить. Про конфликт имен с open() я не подумал, а компилятор промолчал. В итоге приложение начало крешиться в непонятных местах.
Потратил пару часов на разборки что происходит (это ембед, отладки нормальной нет). Оказалось, что эта переменная походу слинковалась вместо функции и вызывалась как сисколл open()
А на что должен ругаться компилятор?
источник

W

Wild_Wind in cxx.Дискуссионная
Ruben
это ембед, будь он не ладен. Проприетарный SoC с тулчейном от производителя
х2 Сочувствую.
источник

R

Ruben in cxx.Дискуссионная
Ilia Zviagin
А на что должен ругаться компилятор?
ну конфликт имен вроде, нет? Линкер должен ругаться типа redefination of symbol или как-то так
источник

R

Ruben in cxx.Дискуссионная
обычно конфликты в глобальной области видимости не линковались
источник

R

Ruben in cxx.Дискуссионная
я меньше всего подозревал в креше банальную булеву переменную, поэтому день выдался тяжелый
источник

R

Ruben in cxx.Дискуссионная
пришлось половину проекта перековырять, пока до нее добрался. Думал и на выравнивание, и на несовместимость abi некоторых либ
источник

n

nhva in cxx.Дискуссионная
Схема работает! Член увеличился на 5 см!
источник

н

неосилятор in cxx.Дискуссионная
источник

O

Ofee in cxx.Дискуссионная
nhva
Схема работает! Член увеличился на 5 см!
У моего друга так лапки отсохли и чай он перестал пить!
источник

АВ

Александр Вольнов in cxx.Дискуссионная
Kirill Kaymakov
Да прост чувак с максимализмом хочет создать свой язык, который по сути есть что-то похожее на фшарп)
На F# и все другие существующие языки это ни капли не похоже. Это будет язык, ориентированный на данные, и первоначальная цель именно заменить все текстовые и бинарные форматы сериализации, а не какой-либо существующий язык программирования. Если он и станет языком общего назначения, то очень не скоро. Поначалу это будет встраиваемый вспомогательный язык, который будет брать на себя все задачи, напрямую связанные с хранением и преобразований данных, главным образом, те из них, которые существующие языки решать не приспособлены.
Сейчас для решения этих задач используют либо готовые неэффективные решения (JSON/XML/protobuf и т.п.) с костылями, либо делают своё на неприспособленных для этого языках программирования путём написания большого количества сложного кода, который приходится долго и мучительно дебажить, потом модифицировать и дебажить заново.
источник

O

Ofee in cxx.Дискуссионная
Ofee
У моего друга так лапки отсохли и чай он перестал пить!
С тех пор у меня нет друзей — никто не может меня больше оскорбить отказом от чая. И да, смерть — не причина...
источник

АВ

Александр Вольнов in cxx.Дискуссионная
Кстати, я недавно дал название своему языку - DataVoln.
источник

KK

Kirill Kaymakov in cxx.Дискуссионная
Александр Вольнов
На F# и все другие существующие языки это ни капли не похоже. Это будет язык, ориентированный на данные, и первоначальная цель именно заменить все текстовые и бинарные форматы сериализации, а не какой-либо существующий язык программирования. Если он и станет языком общего назначения, то очень не скоро. Поначалу это будет встраиваемый вспомогательный язык, который будет брать на себя все задачи, напрямую связанные с хранением и преобразований данных, главным образом, те из них, которые существующие языки решать не приспособлены.
Сейчас для решения этих задач используют либо готовые неэффективные решения (JSON/XML/protobuf и т.п.) с костылями, либо делают своё на неприспособленных для этого языках программирования путём написания большого количества сложного кода, который приходится долго и мучительно дебажить, потом модифицировать и дебажить заново.
Ну ты понимаешь, что ты лепишь f#, но при этом пытаешься сделать его заменой питону и R?
источник