diff options
author | Larry Rosenman <ler@FreeBSD.org> | 2020-07-30 20:18:43 +0000 |
---|---|---|
committer | Larry Rosenman <ler@FreeBSD.org> | 2020-07-30 20:18:43 +0000 |
commit | b18acf6f2cf8fce61ca3d5f1d5c3be5f62b810e7 (patch) | |
tree | f249073f025deb2f14961b7f1d71ce67c6ca54ff | |
parent | 8f10ac3dcd6398f6e4200f114ae839698aaae63e (diff) |
devel/cdecl: update to 8.0.
C2X support
Added support for C2X:
Added type char8_t.
Added [[...]] syntax for attributes.
Added [[deprecated]], [[maybe_unused]], and [[nodiscard]] attributes.
Removed support for typeless function arguments in K&R C.
More C++20 support
Added support for constinit and export in C++20.
Embedded C support
Added support for Embedded C:
Added types _Accum and _Fract (and accum and fract).
Added modifier _Sat (and sat and saturated).
Added the typedefs int_hk_t, int_hr_t, int_k_t, int_lk_t, int_lr_t, int_r_t, uint_uhk_t, uint_uhr_t, uint_uk_t, uint_ulk_t, uint_ulr_t, and uint_your_t.
Since the Embedded C standard is based on C99, support for Embedded C is available only when the language is set to C99.
Forbidding attribute syntax
The [[xxx]] attribute syntax is now forbidden until either C2X or C++11.
class, struct, & union optional ;
Semicolons are now optional after class, struct, or union declarations.
class, struct, & union define themselves
Before now:
class C { typedef int Int; }
would define only C::Int as a type. Now, the enclosing class, struct, or union is also defined as a type. Hence, the above is now equivalent to:
define C as class C
define C::Int as int
This also means that either:
class C { }
class C
is eqivalent to:
define C as class C
class, struct, & union commands
class, struct, and union are now commands (just like namespace).
Per-scope types; fixed English scope name order
Each scope of a scoped name (sname) now has its own type. Additionally, the English printed order is now (correctly) inner-to-outermost. For example:
c++decl> namespace N { class C { typedef int I; }; }
c++decl> explain N::C::I x
declare x as I of class C of namespace N
Floating-point extensions for C types
Added types _Decimal32_t, _Decimal64_t, _Decimal64x, _Decimal128x, _Float32, _Float32x, _Float64, _Float128, _Float128x, femode_t, and long_double_t.
Aligned to
Now allowing to in addition to as for ... aligned [as|to] ....
show as
Now allowing an optional as in show ... [as] typedef.
asm
Added the asm keyword to prevent declarations from using it.
Notes
Notes:
svn path=/head/; revision=543832
-rw-r--r-- | devel/cdecl/Makefile | 2 | ||||
-rw-r--r-- | devel/cdecl/distinfo | 6 |
2 files changed, 4 insertions, 4 deletions
diff --git a/devel/cdecl/Makefile b/devel/cdecl/Makefile index 63bc088a15e2..c863e9f4a264 100644 --- a/devel/cdecl/Makefile +++ b/devel/cdecl/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= cdecl -PORTVERSION= 7.4.1 +PORTVERSION= 8.0 DISTVERSIONPREFIX= ${PORTNAME}- CATEGORIES= devel diff --git a/devel/cdecl/distinfo b/devel/cdecl/distinfo index 13c7c7183c00..ef876a856221 100644 --- a/devel/cdecl/distinfo +++ b/devel/cdecl/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1594653954 -SHA256 (paul-j-lucas-cdecl-cdecl-7.4.1_GH0.tar.gz) = a9595a48dba1e320015d2e2102f4643f32f183bf777750f27fb99cfa26d91383 -SIZE (paul-j-lucas-cdecl-cdecl-7.4.1_GH0.tar.gz) = 433177 +TIMESTAMP = 1596140272 +SHA256 (paul-j-lucas-cdecl-cdecl-8.0_GH0.tar.gz) = d59a071c4038eaf21f25a726e5b495b3b8f028a4bc89dceb645cc3514daef392 +SIZE (paul-j-lucas-cdecl-cdecl-8.0_GH0.tar.gz) = 443998 |