Jump to Table of Contents Collapse Sidebar

P1376R0
Summary of freestanding evening session discussions

Published Proposal,

This version:
http://wg21.link/P1376R0
Author:
(National Instruments)
Audience:
WG21
Project:
ISO/IEC JTC1/SC22/WG21 14882: Programming Language — C++
Source:
github.com/ben-craig/freestanding_proposal/blob/master/san_diego_evening.bs

Abstract

Summary of discussion in San Diego 2018 evening session discussing freestanding direction

1. Freestanding is...

Throughout the evening session, many potential qualities of freestanding were pitched. Many of these potential qualities are mutually exclusive, and lead to drastically different designs.

2. Assorted statements from the evening

3. Discussions with regards to modules

4. Toolchains

5. Related Polls

5.1. SG1 polls for [P1105R1] (Nov 7, 2018)

Request the wider WG21 group to form an overarching direction for freestanding
SF/F/N/A/SA
18/3/1/0/0

Conforming freestanding implementations could make thread_local ill-formed
SF/F/N/A/SA
3/12/5/0/0

Conforming freestanding implementations could omit lock-free atomics
SF/F/N/A/SA
2/6/4/6/2

Conforming freestanding implementations could omit thread-safe statics
SF/F/N/A/SA
0/6/8/4/2

5.2. EWG polls for [P1212R0] (Nov 6, 2018)

Subset the language support in the standard library modules paper so that the parts requiring an OS are not freestanding
SF/F/N/A/SA
3/2/5/11/3

Expand the library, but maintain all language support facilities in standard library modules
SF/F/N/A/SA
3/10/5/0/1

5.3. SG14 cppcon meeting polls for D1105R1.3 (Sep 26, 2018)

Minutes
Poll: I want to know if we’re on board with a way to disable dynamic, type-based exceptions (this proposal is neutral with respect to static exceptions)
(no opposition in this room)

5.4. SG14 telecon polls for [P1105R0] (July 11, 2018)

Minutes

Poll 1: get rid of freestanding
SF/F/N/A/SA
0/1/2/9/11

Poll 2: modify freestanding along the lines of [P1105R0], encouragement for further work, agree with most of it
SF/F/N/A/SA
5/13/4/0/0

5.5. LEWG poll for [P0829R0] (Nov 8, 2017)

Minutes
Change the definition of freestanding along these lines
SF/F/N/A/SA
1/7/7/1/0

Add a classification for embedded-friendly interfaces
SF/F/N/A/SA
1/5/9/1/0

We support proposed removal of typeinfo and exception headers from freestanding
SF/F/N/A/SA
1/6/6/1/2

We are ok with marking freestanding support on the per-API level, not per-header
SF/F/N/A/SA
0/15/0/3/0

We are ok with marking freestanding support on a method level, not per-class.
SF/F/N/A/SA
0/9/3/5/1

5.6. LEWG poll for [P0581R1] (Mar 13, 2018)

Minutes

We want to see more work on defining module(s) specifically targeting basic/freestanding.
UNANIMOUS CONSENT

References

Informative References

[P0581R1]
Marshall Clow; et al. Standard Library Modules. URL: http://wg21.link/P0581R1
[P0829R0]
Ben Craig. Freestanding Proposal. URL: http://wg21.link/P0829R0
[P1105R0]
Ben Craig; Ben Saks. Leaving no room for a lower-level language: A C++ Subset. URL: http://wg21.link/P1105R0
[P1105R1]
Ben Craig; Ben Saks. Leaving no room for a lower-level language: A C++ Subset. URL: http://wg21.link/P1105R1
[P1212R0]
Ben Craig. Modules and Freestanding. 6 October 2018. URL: https://wg21.link/p1212r0