Opened 5 years ago

Last modified 3 years ago

#297 new defect

C++11 support

Reported by: komh Owned by:
Priority: normal Milestone: libc-0.7
Component: libc Version: 0.6.5
Severity: normal Keywords:



Our libc headers lacks of C++11 standard. Especially, gcc 4.9.0 requires max_align_t to be defined by stddef.h in its cstddef.

Change History (2)

comment:1 Changed 3 years ago by komh

386/_stdint.h does not define constant macros such as INT64_C() and limit macros such as INT64_MAX on C++11. Because if C++, it requres __STDC_CONSTANT_MACROS and __STDC_LIMIT_MACROS to be defined. However, C++11 removed those limitations. That is, without defining those macros, constant macros and limit macros should be available.

comment:2 Changed 3 years ago by komh

C++11 standard introduced long long stuffs. However, sys/cdefs.h does not define __LONG_LONG_SUPPORTED if __STRICT_ANSI__, which is defined by -std=c++11. As a result, long long stuffs are disabled in C++11.

Note: See TracTickets for help on using tickets.