TGViewer
C++ Moscow C++ Moscow @cppmoscow_info · 448 subscribers
Post #87 773
Наш редакторский состав несколько недель боролся с хворью, но в конечном итоге победил и возвращается, чтобы радовать вас плюсовыми постами.

На последнем плюсовом митапе был поднят очень интересный вопрос: почему следующий код компилируется и gcc и clang и успешно выполняется, когда, казалось бы, согласно [module.global.frag], совсем не должен (см. объяснение Константина Владимирова)?

// global.hpp
#include <iostream>
template <typename T> void dump(T val) { std::cout << val << std::endl; }


// global.cppm
module;
#include "global.hpp"
export module global;
export template <typename T> void output(T item) { dump(item); }


// main.cpp
import global;
int main() { output(42); }


Мы честно пытались это нагуглить, но у нас не получилось. Каким образом в данном примере происходит инстанцирование? clang и gcc сохраняют в pcm дополнительные данные, необходимые для него? Если вы знаете секрет этих колдунств — мы с радостью ждем вас в комментариях. Если не знаете — ждём вас не менее. Разберёмся в компиляторной магии вместе!
YouTube Магистерский курс C++ (МФТИ, 2022-2023). Лекция 6. SFINAE. Лекции в магистратуре МФТИ по современному C++ на русском языке. Кафедра микропроцессорных технологий. Эта лекция посвящена инстанцированию. Мы сначала разовьём тему инстанцирования для модулей, а дальше посмотрим на SFINAE и на его внезапные, хотя иногда…
  • 👍 6
  • 🔥 3
  • 😴 1
More from @cppmoscow_info
  1. Aug 11, 2024#article #original Реализуем эффективный тупль с помощью C++26 Свет видел много любительск…
  2. Jul 14, 2024Интересный пример, когда объявление friend T (где T — шаблонный параметр) имеет смысл: tem…
  3. Jun 2, 2024#обсуждение Вечернее обсуждение. Пост от @eoanermine Кажется, будто C++ идёт не в том напр…
  4. Mar 1, 2024Спасибо всем зарегистрировавшимся, и до скорой встречи! Нам хотелось бы собрать как можно…
  5. Feb 27, 202420 марта: C++ митап в Петербурге и онлайне Нас ждет классический вечерний бесплатный митап…
  6. Feb 27, 2024Пока мы проводим митапы в Москве, наши коллеги из YADRO планируют митап в Санкт–Петербурге…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →