filmov
tv
CppCon 2017: Piotr Padlewski “Undefined Behaviour is awesome!”
![preview_player](https://i.ytimg.com/vi/ehyHyAIa5so/maxresdefault.jpg)
Показать описание
—
—
Undefined behavior (UB) is one of the features of C++ that is both loved and hated. Every C++ developer cares about performance, which is why it is very important to understand what the compiler can optimize and what are the language guarantees. Many times programmers are too optimistic about what the compiler can optimize, or they waste time optimizing code by hand.
In this talk you will learn:
- what is the “as-if” rule
- why compilers know less than the programmer — the main problem with Translation Units
- why compilers optimize based on UB, but don't warn about it
- why Undefined Behavior can transcend time, removing your whole code without running 88mph
- why having a more constrained language is better — optimizations that you can’t do in C
—
Piotr Padlewski: masters student, University of Warsaw
—
*-----*
*-----*
—
Undefined behavior (UB) is one of the features of C++ that is both loved and hated. Every C++ developer cares about performance, which is why it is very important to understand what the compiler can optimize and what are the language guarantees. Many times programmers are too optimistic about what the compiler can optimize, or they waste time optimizing code by hand.
In this talk you will learn:
- what is the “as-if” rule
- why compilers know less than the programmer — the main problem with Translation Units
- why compilers optimize based on UB, but don't warn about it
- why Undefined Behavior can transcend time, removing your whole code without running 88mph
- why having a more constrained language is better — optimizations that you can’t do in C
—
Piotr Padlewski: masters student, University of Warsaw
—
*-----*
*-----*
CppCon 2017: Piotr Padlewski “Undefined Behaviour is awesome!”
CppCon 2017: John Regehr “Undefined Behavior in 2017 (part 1 of 2)”
CppCon 2017: John Regehr “Undefined Behavior in 2017 (part 2 of 2)”
CppCon 2017 Undefined Behavior in 2017 part 1 of 2
CppCon 2015: Piotr Padlewski 'C++ WAT'
Programing: The Last 4000 Years - Juanpe Bolívar [ CppCon 2017 ]
C++Now 2019: Oded Shimon “Undefined Behavior - Not what you expected”
CppCon 2018: Barbara Geller & Ansel Sermersheim “Undefined Behavior is Not an Error”
CppCon 2017: Gennadiy Rozental “How to break an ABI and keep your users happy”
CppCon 2017: Louis Brandy “Curiously Recurring C++ Bugs at Facebook”
code::dive 2016 conference – Piotr Padlewski – Undefined behaviour is awesome!
CppCon 2017: James McNellis “Everything You Ever Wanted to Know about DLLs”
CppCon 2017: Isabella Muerte “There Will Be Build Systems: I Configure Your Milkshake”
Calling code w/o headers... - Jorg Brown [ CppCon 2017 ]
A Composable Command Line Parser - Phil Nash [ CppCon 2017 ]
Detecting Programs That Rely on Undefined Behavior - Geoffrey L. Viola - CppCon 2019
CppCon 2017: Tony Van Eerd “Postmodern C++”
Back To Basics: Undefined Behavior - Ansel Sermersheim & Barbara Geller - CppCon 2021
CppCon 2017: Billy Baker “Almost Unlimited Modern C++ in Kernel-Mode Applications”
Thank mr. compiler (C++ undefined behavior in action)
Undefined Behavior in the STL - Sandor Dargo - CppCon 2022
CppCon 2017: Mikhail Matrosov “Refactor or die”
CppCon 2017: Scott Jones & Kenny Kerr “C++/WinRT and the Future of C++ on Windows”
Undefined Behavior in C++: A Performance Viewpoint - Fedor Pikus - CppNow 2022
Комментарии