Compilers! Undefined behavior and Functional safety


Details
==> For the guest list security requested a list of full names of people, including +1's, so if you want please update your Meetup profile or just send me your name, it will only be for this one time list <==
Time to catch up again and deep dive into Undefined behavior and compiler optimisations with a well-known member of our community! Maciej works on ultra-fast C++ trading applications and also teaches Modern C++ to his colleagues. We’ll explore interesting cases of undefined behavior and compiler optimizations working together. Marcel, CTO from Solid Sands, a company specialised in testing and verification of compilers for safety-critical industries, has kindly offered to give a talk on Functional safety - "Is your compiler safe?".
# Schedule
06:00 PM – Socializing with food and drinks
06:30 PM – Intro
06:35 PM – A closer look on Undefined behaviour and compiler optimisations
07:15 PM – Short break
07:30 PM – Functional safety - Is your compiler safe?
08:15 PM – Final drinks
09.00 PM – The end
# Venue
Thanks Optiver for hosting! The address is: Strawinskylaan 3095 Amsterdam in the Atrium building.
Public Transport is recommended since it's close to the train station Amsterdam Zuid WTC and parking is very expensive in this area.
Google maps: https://maps.google.com/maps?f=q&hl=en&q=Strawinskylaan+3095%2C+Amsterdam%2C+nl
[Attached the instructions as photos]
See also: https://secure.meetupstatic.com/photos/event/9/5/3/4/600_462158196.jpeg
# Maciej Gajewski - A closer look on Undefined behaviour and compiler optimisations
Abstract: We’ll explore few interesting instances of undefined behaviour and compiler optimizations working together. We all know that invoking UB can, theoretically, result in your hard-drive being formatted. But what actually happens? What will the compiler do?
Bio: Maciej currently works for Optiver as a C++ developer and trainer. He has worked with C++ since 2000 in different domains, from programming embedded systems in industrial devices, to low-latency code in HFT trading. He has a Masters in Robotics from Wrocław University of Technology.
# Marcel Beemster - Is your compiler safe?
Abstract: Would you step into a car if you knew that the software for the brakes was compiled by an open source compiler? The question is not academic. Compiled code is used today for many of the safety-critical components in modern cars. For the development of autonomous driving systems, the car industry demands safety qualified, high performance compilers to create image and radar signal processing applications written in C and C++. Fortunately, there are international standards such as ISO 26262 that describe the requirements for electronic components, and their software, to be used in safety-critical systems.
This presentation discusses general techniques used to design safe systems and more specifically the steps that are needed to develop sufficient trust for compilation tools to be used in cars, trains, planes, medical equipment and nuclear installations. We will look at the steps that are necessary to qualify compilers and libraries, the V-model of software engineering, MC/DC analysis, the MISRA coding guidelines and what they mean for the application developer.
Bio: "Before starting Solid Sands, I was an assistant professor at the University of Amsterdam and later switched to the industry as a compiler developer at ACE Associated Compiler Experts. I love the C programming language, right from the first day I picked up K&R’s book, because it provides a direct connection with the machine at high performance. That book was destroyed by a Chinese professor with a fondness for Prolog who sat on it for reference while writing a device driver. C is that flexible. It did not stop me. C has its issues, but so has . My goal is to make sure our C and C++ programs and implementations are of the highest quality possible."

Compilers! Undefined behavior and Functional safety