Тёмный

C++ Linkers and the One Definition Rule - Roger Orr - ACCU 2024 

ACCU Conference
Подписаться 16 тыс.
Просмотров 2 тыс.
50% 1

ACCU Membership: tinyurl.com/yd...
---
C++ Linkers and the C++ One Definition Rule - Roger Orr - ACCU 2024
---
Most C++ programmers use a linker to create the binaries they create, but to many this process is a black box.
In this presentation I'll unpack some of the functionality of the linker, and how it relates to the C++ source code that you start with.
I'll also be looking at the C++ One Definition Rule (ODR) and explaining the reasons behind some of the consequences of breaking it.
The purpose of this talk is to improve your understanding of the linking and loading process for C++ programs, focusing on Windows and Linux, so you will hopefully be better able to work with, rather than fight against, the linking process.
Some basic knowledge of writing and executing a C++ program will be assumed.
Slides: accu.org/conf-...
Sponsored By think-cell
---
Roger Orr
Roger has many years of experience in IT, using a variety of languages and platforms, working for a number of different companies over the years, mostly in the financial sector. His recent work has mostly been in C++, on both Windows and Linux.
Roger is an active member of ACCU (accu.org), and responsible for the publications, and is also one of the organisers of the ACCU conference. He also writes a regular Code Critique column in the magazine.
He is chair of the UK C++ panel and a member of the C++ ISO standards group WG21 where he is chair of SG23 ("Safety and Security") and a member of the 'Direction Group' which recommends priorities for the ISO C++ standardisation committee.
---
The ACCU Conference is the annual conference of the ACCU membership, but is open to any and all who wish to attend. The tagline for the ACCU is 'Professionalism in Programming', which captures the whole spectrum of programming languages, tools, techniques and processes involved in advancing our craft. While there remains a core of C and C++ - with many members participating in respective ISO standards bodies - the conference, like the organisation, embraces other language ecosystems and you should expect to see sessions on C#, D, F#, Go, Javascript, Haskell, Java, Kotlin, Lisp, Python, Ruby, Rust, Swift and more.The ACCU Conference is a conference by programmers for programmers about programming.
Discounted rates for members.
ACCU Membership: tinyurl.com/yd...
2024 Program: accu.org/conf-...
accu.org
www.accuconfer...
mastodon.socia...
/ accu-conference
bsky.app/profi...
/ accuorg
/ accuconf
---
RU-vid Videos Filmed, Edited & Optimised by Digital Medium: events.digital...
#accuconf #linkers #cppprogramming #programming #cplusplus

Опубликовано:

 

12 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 1   
@dadisuperman3472
@dadisuperman3472 Месяц назад
Greate talk... Actually the last bit of it is interesting. If we can use the dlsym(RTLD_Next,....); We can perfectly chain function calls which have the same signature. I call that "ODR_CONCATENATION" it is specially interesting if you can prove that the calls inside the body of the chained function don't leak. For example: Helper(int i) { if(i ==1) puts("1"); if(i==2) puts("2"); pfn next = dlsym(RTLD_Next, "Z6HelperIi"); next(i); } Here next is calling the Helper function in the other translation unit, and that Helper function is calling the next and so on.... Biiiiig cascading if's concatenation.
Далее
C++ Should Be C++ - David Sankel - C++Now 2024
1:28:49
Просмотров 16 тыс.
Risc-V Bare Metal C Hello World!
21:37
Просмотров 4,7 тыс.
Andrew Kelley   Practical Data Oriented Design (DoD)
46:40