Size: a a a

2021 July 02

C

Chuvi in pro.cxx
ну, линковку на gcc я уже переделал. (и вообще cmake прикрутил уже, да)
источник

SK

Stas Koynov in pro.cxx
ну тут уже беда в cmake кто в нормальном уме его юзает в эмбедете? мэйк сам напиши там будет строк 100 от силы
источник

АК

Александр Караев... in pro.cxx
А давайте не будем делать вбросы и заниматься дезинформацией (про gcc вместо g++)?
источник

OK

Oleg Kizilov in pro.cxx
Так удобно же cmake
источник

SK

Stas Koynov in pro.cxx
ладно спишем на магию. что у чувака ++ которые не умеют писать по указателю.
источник

C

Chuvi in pro.cxx
да умеют они всё прекрасно.
только не хотят, ибо указатель с типом volatile а запиываемый объект - нет
и говорит что мол "квалифакаторы теряются" бла-бла-бла.
источник

АК

Александр Караев... in pro.cxx
clang (последний) пишет вполне понятные ошибки: https://godbolt.org/z/4djTKvre9
> candidate function (the implicit copy assignment operator) not viable: 'this' argument has type 'volatile A', but method is not marked volatile

Так что магии тут никакой нет, просто работа с volatile объектами требует чуть больших гарантий. Задефолтить operator=(..) volatile не получится, увы, только если ручками писать.
источник

SK

Stas Koynov in pro.cxx
то есть они все же закапывают ++ для эмбедета?
источник

АК

Александр Караев... in pro.cxx
Если под "закапыванием" подразумевается поведение по ссылке выше, то да - в 2011 закопали и никак не откопают.
источник

VK

Valentin Kornienko in pro.cxx
В смысле кто в нормальном уме его использует?
источник

VK

Valentin Kornienko in pro.cxx
Любой нормальный человек, который не хочет завязаться на среду разработки.
источник

VK

Valentin Kornienko in pro.cxx
Кто их закапывает?
источник

D

Dmitriy in pro.cxx
А кто в нормальном уме там использует Make в 2021?
Вроде Embedded не застряли во временах динозавров
источник

D

Dmitriy in pro.cxx
+
источник

АК

Александр Караев... in pro.cxx
Просто у всех разный embedded. Одни сидят на C++03 и ворчат, что раньше трава была зеленее, а другие используют современный тулинг и обмазываются шаблонами.
источник

V

Vladimir in pro.cxx
https://www.godbolt.org/z/Y794EoM7h

#include <cstddef>
#include <vector>
#include <boost/asio/buffer.hpp>


int main(int argc, char** argv)
{
   std::vector<std::byte, std::allocator<std::byte>> otherBuff;
   auto buffer = boost::asio::buffer<std::byte, std::allocator<std::byte>>(otherBuff);
   //auto buffer = boost::asio::buffer(otherBuff); // compiles fine
   (void)buffer;
   return 1;
}

вопрос почему подчеркнутая строка не компилируется а вот следующая с type deduction компилится.
Ошибка компиляции :
C:/data/msvc/14.29.30038.1/include\xstring(1242): error C2039: 'char_type': is not a member of 'std::allocator<std::byte>'
<source>(9): note: see declaration of 'std::allocator<std::byte>'
<source>(10): note: see reference to class template instantiation 'std::basic_string_view<std::byte,std::allocator<std::byte>>' being compiled
C:/data/msvc/14.29.30038.1/include\xstring(1242): error C2146: syntax error: missing '>' before identifier 'char_type'

вектор матчится к string почему?
источник

П

Пашечка in pro.cxx
Доброго времени суток. Вопросец:

Есть две функции с переменным числом аргументов. Отличия между ними только в обязательных непеременных параметрах, если конкретнее, то в типах. Один тип вполне кастуется в другой. Дальнейшая обработка переменных аргументов абсолютно идентична.

Хочется просто взять, в одной функции скастовать типы обязательных параметров и вызвать другую передав все переменные аргументы as is. Но я чот вообще не вдупляю, как это сделать, если не парсить дополнительно va_list. Не направите, куда копать?
источник

K

Kelbon in pro.cxx
отправлю не использовать сишные элипсы в 2021 году(va_list и всё с этим связанное), есть шаблоны(С++11 хотя бы нужен)
источник

АК

Александр Караев... in pro.cxx
Эллипсис не форвардится без va_list, именно поэтому в пару к каждой функции с эллипсисом в std есть v* аналог, принимающий va_list.
источник

П

Пашечка in pro.cxx
То есть надо делать ещё одну функцию, которая умеет принимать va_list вместо переменного числа аргументов?
источник