notbugAs an Amazon Associate I earn from qualifying purchases.
Want a good read? Try FreeBSD Mastery: Jails (IT Mastery Book 15)
Want a good monitor light? See my photosAll times are UTC
Ukraine
This referral link gives you 10% off a Fastmail.com account and gives me a discount on my Fastmail account.

Get notified when packages are built

A new feature has been added. FreshPorts already tracks package built by the FreeBSD project. This information is displayed on each port page. You can now get an email when FreshPorts notices a new package is available for something on one of your watch lists. However, you must opt into that. Click on Report Subscriptions on the right, and New Package Notification box, and click on Update.

Finally, under Watch Lists, click on ABI Package Subscriptions to select your ABI (e.g. FreeBSD:14:amd64) & package set (latest/quarterly) combination for a given watch list. This is what FreshPorts will look for.

non port: devel/cdecl/distinfo

Number of commits found: 81

Wednesday, 21 Feb 2024
04:20 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update to 16.2.1

Fixed macro argument list memory leak
Fixed said leak.
commit hash: 79a63d136c6362b695028a0682bf05414d4dad1c commit hash: 79a63d136c6362b695028a0682bf05414d4dad1c commit hash: 79a63d136c6362b695028a0682bf05414d4dad1c commit hash: 79a63d136c6362b695028a0682bf05414d4dad1c 79a63d1
Wednesday, 31 Jan 2024
04:15 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: upgrade to 16.2

Partial typeof support
Both typeof and typeof_unqual in C23 are partially supported in that types are
accepted (but expressions are not):

typeof(int*) x                // supported
typeof(x) y                   // not supported
Additionally, GNU's __typeof__ is a synonym for typeof.
commit hash: 6d9b0c86d9b6a426ab28079cdee29dde7dfa70c3 commit hash: 6d9b0c86d9b6a426ab28079cdee29dde7dfa70c3 commit hash: 6d9b0c86d9b6a426ab28079cdee29dde7dfa70c3 commit hash: 6d9b0c86d9b6a426ab28079cdee29dde7dfa70c3 6d9b0c8
Monday, 15 Jan 2024
04:16 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update to 16.1

ChangeLog:
explicit-ecsu in English
The value of the explicit-ecsu option now also applies in pseudo-English.
Previously:

c++decl> class C
c++decl> explain C *p
declare p as pointer to C
Now (with explicit-ecsu containing c):

c++decl> class C
c++decl> set explicit-ecsu = csu
c++decl> explain C *p
declare p as pointer to class C
Leading/trailing whitespace stringification
Previously:

expand Q2(, a b ,)
incorrectly returned " a b " whereas now it correctly returns "a b".
commit hash: f075b80fc20e0e8bb7cd47c5cab4a2094093ee16 commit hash: f075b80fc20e0e8bb7cd47c5cab4a2094093ee16 commit hash: f075b80fc20e0e8bb7cd47c5cab4a2094093ee16 commit hash: f075b80fc20e0e8bb7cd47c5cab4a2094093ee16 f075b80
Saturday, 6 Jan 2024
00:43 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update to 16.0

Release Notes:
Macro expansion
Cdecl now allows you to #define macros and expand them step-by-step.

C99 with extension error messages
Improved C99 with extension error messages.

--disable-cdecl-debug removed
The --disable-cdecl-debug configure option has been removed (which means cdecl
debug output is always compiled in).

GCC_COLORS
Support for GCC_COLORS has been removed. It was more of a hindrance than a help.

Implicit int pointers in C++
Implicit int pointer declarations, e.g., *p, are now correctly illegal in C++.

--infer-command, -I
The former --explain and -e options have been renamed --infer-command and -I;
the former explain-by-default set option has been renamed infer-command.

Fixed issue #32: Invalid function declarator accepted as valid
A declarator like int f()()() was incorrectly accepted as valid — fixed.

Fixed infer-command comment syntax error
When in infer-command mode, a line starting with a comment would cause a syntax
error. Fixed.

--east-const, -e
Since the old -e was renamed to -I, the short option for --east-const is now -e.

Lambdas in C
Lambdas are now correctly illegal in C.

Nested typedefs
Fixed printing of typedefs of nested types, e.g.:

c++decl> struct S { typedef int I; }
c++decl> typedef typename S::I T
c++decl> show
typedef S::I T;
restrict arrays
Arrays being restrict except as function parameter is now correctly illegal.

Fixed parsing struct member bit-field
A declararation like:

struct S
explain int S::x : 3
was incorrectly parsed; that's now fixed. (Scoped names still correctly can't be
declared like that with bit fields, however.)

Types in error & warning messages
For types that are typedefs, now printing aka followed by their underlying types
in more cases.

Fixed escaped newlines
Fixed escaped newline handling when not using GNU readline.

Fixed q command
Fixed having q be a synonym for quit in infer-command (formerly explain-
by-default) mode.
commit hash: 893fe310b2865c9fd67dc0bbbf54aca444241eab commit hash: 893fe310b2865c9fd67dc0bbbf54aca444241eab commit hash: 893fe310b2865c9fd67dc0bbbf54aca444241eab commit hash: 893fe310b2865c9fd67dc0bbbf54aca444241eab 893fe31
Sunday, 17 Dec 2023
21:41 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl:  upgrade to 15.0

Check the GitHub release notes for more info.
https://github.com/paul-j-lucas/cdecl/releases
commit hash: e7539b7a8add610fb762fac2e6f25b5f230a1dd1 commit hash: e7539b7a8add610fb762fac2e6f25b5f230a1dd1 commit hash: e7539b7a8add610fb762fac2e6f25b5f230a1dd1 commit hash: e7539b7a8add610fb762fac2e6f25b5f230a1dd1 e7539b7
Monday, 9 Jan 2023
20:21 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl:  update to 13.1

ChangeLog:
auto type definitions and casts
Defining or casting a type containing auto is now correctly reported as an
error.

C23 auto
Added support for auto as a deduced type in C23.

C23 trigraphs
Trigraphs are no longer supported in C23.

_BitInt(<int>) help
_BitInt(<int>) was added to the help text.

Color prompt
Now printing the prompt in color even when readline is disabled.

More English synonyms
The following English synonyms have been added:

                boolean  _Bool
                Boolean  _Bool
                 char 8  char8_t
                char 16  char16_t
                char 32  char32_t
             const-eval  consteval
    constant-evaluation  consteval
             const-expr  constexpr
    constant-expression  constexpr
             const-init  constinit
constant-initialization  constinit
       double precision  double
         floating point  float
           user defined  user-defined
         wide character  wchar_t
C++ auto help
auto is now correctly listed as a C++ type in the help for C++11 and later.

More pseudo-English type names
When explaining gibberish, print types in C/C++ (e.g., int), not pseudo-English
(e.g., integer).

--no-english-types, -T, & english-types
Added command-line options to disable printing type names in pseuso-English and
corresponding set option.

More english for user-defined conversions
User-defined conversions in pseudo-English now allow "const[ant] eval[uation]",
"const[ant] expr[ession]", and "const[ant] init[ialization]" for a storage
class.

_BitInt maximum bits
Now check that the maximum number of bits for _BitInt is 64.

explicit-int parsing
Fixed a bug of not resetting the current explicit-int option to none before
parsing a new string.

friend scoped user-defined conversion operators
Explaining a friend scoped user-defined conversion operator, e.g.:

explain friend C::operator int()
is now parsed correctly.

[[noreturn]] in C23.
[[noreturn]] is now printed rather than _Noreturn in C23.

Invalid destructor name error
Improved the error message for an invalid destructor name, e.g., S::~T.

Removed --interactive & -i options
Removed these command-line options. They've been in cdecl since the beginning,
but never seemed to have a justification.

exit and quit command line arguments
Both the exit and quit commands when given as the first word of the first
argument on the command line are now correctly reported as an error.

C23 constexpr help
Added missing constexpr to the help for C23.

Missing C++ types man page
Added some missing C++23 types to the manual page.

Octal digit separators
Digit separators are now supported for octal integers.

reproducible and unsequenced man page
Added missing reproducible and unsequenced to the manual page.

Variadic function parameter
A ... is now correctly allowed as the only function parameter in C++ as well as
C23.
commit hash: 6e09787d318f41ddbfe8e4e9c80237e0c8e2485f commit hash: 6e09787d318f41ddbfe8e4e9c80237e0c8e2485f commit hash: 6e09787d318f41ddbfe8e4e9c80237e0c8e2485f commit hash: 6e09787d318f41ddbfe8e4e9c80237e0c8e2485f 6e09787
Tuesday, 1 Nov 2022
14:16 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: Update to 13.0

ChangeLog:
Better copy constructor support
Declarations like:

c++decl> explain C(C const&)
declare C as constructor (reference to constant C)
are now supported better.

C23 alignas
In C23, alignas is now used instead of _Alignas.

C23 _BitInt(N)
The _BitInt(N) type in C23 in now supported.

C23 bool
In C23, bool is now used instead of _Bool.

C23 constexpr
The constexpr storage class in C23 is now supported.

C23 fixed type enum
Fixed-type enumerations in C23 are now supported.

Digit separators
Digit separators are now supported.

C23 reproducible & unsequenced
These C23 attributes are now supported.

C23 thread_local
In C23, thread_local is now used instead of _Thread_local.

C23 true, false, nullptr, static_assert, & thread_local
These are now also keywords in C23.

C23 typeof & typeof_unqual
These C23 keywords are now recognized, but not supported by cdecl.

More C++23 standard types
Added the standard C++23 types std::bfloat16_t, std::float128_t,
std::float16_t, std::float32_t, std::float64_t, std::ospanstream,
std::spanbuf, std::spanstream, std::stacktrace, std::unexpect_t,
std::wospanstream, std::wspanbuf, and std::wspanstream.

Enumeration bit-fields
Enumerations in C++ can now be bit fields.

C++23 explicit object parameters
Explicit object parameters in C++23 are preliminarily supported.

C++ static operator()
Now allow operator() to be static in C++23.

Added std::bernoulli_distribution and std::random_device
Added these missing C++11 types.

static or const array parameters
Both static or const array declarations are now additionally recognized
outside of function parameters allowing more specific error reporting
(since they're still illegal).

C++11 explicit user-defined conversion operators
Explicit user-defined conversion operators are now correctly allowed in
C++11 and later.

Echoing commands
A new --echo-commands/-O command-line option and echo-commands set
option has been added that echos command given before corresponding
output. (This is primarily useful for associating command output with
input in test scripts.)

Better alignment error location
Improved the location of alignment errors.

Fixed aligned bit fields
Aligned bit fields are now correctly forbidden.

Fixed noprompt error column
Fixed the error column when the prompt is disabled.
commit hash: ecc6a02944950992709cb8d5988014e85e48d8c0 commit hash: ecc6a02944950992709cb8d5988014e85e48d8c0 commit hash: ecc6a02944950992709cb8d5988014e85e48d8c0 commit hash: ecc6a02944950992709cb8d5988014e85e48d8c0 ecc6a02
Sunday, 7 Aug 2022
01:30 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: distfile re-rolled

due to a minor  bug.
commit hash: f34ecf5bc789911d879c7e29233808672b5083e5 commit hash: f34ecf5bc789911d879c7e29233808672b5083e5 commit hash: f34ecf5bc789911d879c7e29233808672b5083e5 commit hash: f34ecf5bc789911d879c7e29233808672b5083e5 f34ecf5
Saturday, 6 Aug 2022
15:24 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update to 12.0

ChangeLog:
Added suggestions
Added suggestions to error messages in certain cases when a keyword is
expected, for example:

cdecl> declare x as type poiner to int
                         ^
			 19: syntax error: "poiner": "as" expected; did
			     you mean "pointer"?
			     Better executable name checking
			     Previously, if cdecl was invoked as cast,
			     declare, or explain, or with a name that
			     isn't a command (through renaming or a hard
			     or a symbolic link) without command-line
			     arguments, it behaved as if it were invoked
			     as cdecl without error. This has been
			     fixed.

			     C23
			     The placeholder name of C2X has been
			     changed to C23.

			     Color and TERM
			     The TERM environment variable is no longer
			     considered when determining whether color
			     should be used in output. Now, all that
			     matters is whether the output stream is
			     connected to a TTY.

			     exit auto-completion
			     The exit command is no longer
			     auto-completable enabling explain to be
			     auto-completed after typing only ex rather
			     than exp as before.

			     help options types
			     Help for types was added to options help.

			     explicit help
			     The missing explicit was added to the help.

			     explicit-escu for enum
			     The explicit-ecsu option for enums is
			     fixed.

			     include
			     Added a new include command to include
			     cdecl commands from files either from a
			     configuration file or the cdecl command
			     line.

			     _Noreturn deprecated
			     _Noreturn is now deprecated in C2X.

			     Printing of types
			     Now printing types in error messages as
			     they were originally defined
			     (pseudo-English vs. gibberish) in more
			     cases.

			     Additional sanitizers
			     The configure options of --enable-msan and
			     --enable-ubsan have been added to enable
			     clang's Memory Sanitizer and Undefined
			     Behavior Sanitizer, respectively. The
			     previous --enable-address-sanitizer has
			     been renamed to --enable-asan.

			     show autocompletion
			     The show command now uses command-specific
			     autocompletion.

			     Overloading co_await operator
			     Overloading the co_await operator is now
			     supported.

			     Predefined types
			     Fixed spelling of bad_typeid; added
			     source_location, type_index, and type_info.

			     Types as objects, English edition
			     Previously declared types in pseudo-Engilsh
			     are now checked to ensure they're not being
			     used as objects:

			     cdecl> struct S
			     cdecl> declare S as int             //
			     error (now)
commit hash: 75ff759a3b189c6ae84690dc788c10d312b535b2 commit hash: 75ff759a3b189c6ae84690dc788c10d312b535b2 commit hash: 75ff759a3b189c6ae84690dc788c10d312b535b2 commit hash: 75ff759a3b189c6ae84690dc788c10d312b535b2 75ff759
Sunday, 15 May 2022
01:46 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: Upgrade to 11.15

ChangeLog:
Atomic arrays
_Atomic arrays are now correctly forbidden:

typedef int A[2]
explain _Atomic A x  // error: _Atomic array of T is illegal
Note that:

_Atomic int x[2];    // OK: array of _Atomic T is legal
is legal.

CDECLRC environment variable
If none of the --config, -c, --no-config, nor -C command line options
are given and the value of the CDECLRC environment variable isn't empty,
it's used as the full path to the cdeclrc file to read upon start-up.

Configuration file default language
Previously, cdecl would temporarily set the current language to the
latest supported version of C++ while reading a configuration file. It
no longer does this as a special case. Now, as always, it sets the
default language based on the executable name.

enum alignment in C11
Alignment of enums is now correctly allowed in C11.

Types as objects
Previously declared types are now checked to ensure they're not being
used as objects:

cdecl> struct S
cdecl> explain int S                // error (now)
commit hash: cf19ea635a5b7f72715b1c2d25f81d4d605ad738 commit hash: cf19ea635a5b7f72715b1c2d25f81d4d605ad738 commit hash: cf19ea635a5b7f72715b1c2d25f81d4d605ad738 commit hash: cf19ea635a5b7f72715b1c2d25f81d4d605ad738 cf19ea6
Friday, 11 Mar 2022
16:01 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: upgrade to 11.14

ChangeLog:
Alternative tokens & digraphs
Now prints a warning that neither alternative tokens nor digraphs are
supported until C95. Also now printing a warning if alternative tokens
are set and the current language changes to one that doesn't support
them.

east-const in K&R C
Now prints a warning that east-const isn't supported until C89.

using
Now prints a warning that using isn't supported until C++11.

Fixed void f(int())
The long-standing issue #10 has finally been fixed.

Fixed help message
The old mention of files... in the help messages was removed.
commit hash: 06dd8b8e8ed5ac54f8bb20db18730942c934d95a commit hash: 06dd8b8e8ed5ac54f8bb20db18730942c934d95a commit hash: 06dd8b8e8ed5ac54f8bb20db18730942c934d95a commit hash: 06dd8b8e8ed5ac54f8bb20db18730942c934d95a 06dd8b8
Sunday, 27 Feb 2022
21:03 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update to 11.13

ChangeLog:
Aligned enum, struct, and union in C
Alignment of enum, struct, and union is now correctly forbidden in C.

alignas & _Alignas
These keywords are now additionally allowed instead of aligned [as|to]
in pseudo-English.

Auto-completion of cdecl keywords
Cdecl keywords are now not auto-completable when explaining gibberish.

Auto-completion tweaks
new is now auto-completable; variadic is now autocompletable only in C89
and later. The following are now not autocompletable: co_await,
co_return, co_yield, concept, decltype, and requires.

restrict of typedef
restrict is now correctly allowed on typedefs of pointer:

cdecl> typdef int *pint
cdecl> explain restrict pint p
declare p as restricted pint
return English shorthand
return is now accepted as a shorthand for returning in pseudo-English.

English new-style cast synonyms
The C++ keywords const_cast, dynamic_cast, reinterpret_cast, and
static_cast are now synonyms for their respective two-word counterparts
in pseudo-English.

Fixed core dump for --debug/-d for operator
Fixed a core dump when using the --debug/-d option for an operator.

Fixed function returning function parameter crash
A crash for:

explain void f( int()() )
(which is illegal) has been fixed.
commit hash: 2f70772413f3c2078787cce52e21c6220df2d7db commit hash: 2f70772413f3c2078787cce52e21c6220df2d7db commit hash: 2f70772413f3c2078787cce52e21c6220df2d7db commit hash: 2f70772413f3c2078787cce52e21c6220df2d7db 2f70772
Friday, 11 Feb 2022
15:47 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: Upgrade to 11.12.

ChangeLog:
noexcept for function parameters
noexcept is now correctly allowed for pointers to function parameter
arguments:

c++decl> explain void g( void (*f)() noexcept )
declare g as function (f as pointer to no-exception function returning
void) returning void
Dynamic exception specifications
These are now parsed, but either not supported by cdecl through C++14 or
no longer supported in C++17.

Ignore leading whitespace for command completion
Previously, if there was any leading whitesplace before a command, that
is:

cdecl>  dec<TAB>
       ^
              leading whitespace
	      it wouldn't match: now it does.

	      Fixed interactive column
	      The column number printed for error and warning messages
	      while interactive is now correct.
commit hash: 1d3251a7cf7e01ed6f1de8c812d4c5f67c6bc531 commit hash: 1d3251a7cf7e01ed6f1de8c812d4c5f67c6bc531 commit hash: 1d3251a7cf7e01ed6f1de8c812d4c5f67c6bc531 commit hash: 1d3251a7cf7e01ed6f1de8c812d4c5f67c6bc531 1d3251a
Sunday, 23 Jan 2022
02:33 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update to 11.11

ChangeLog:
using with attributes
Now supporting using with attributes:

c++decl> explain using Int [[maybe_unused]] = int
declare Int as maybe unused type int
Declare types with using
In C++11 and later, types are now declared with using instead of typedef
by default.

using declarations
New --no-using/-u command-line option and using set option that control
whether types are declared with using instead of typedef in C++11 and
later:

c++decl> declare pint as type pointer to int
using pint = int*;
c++decl> set nousing
c++decl> declare pint as type pointer to int
typedef int *pint;
More K&R C types
The types caaddr_t and daddr_t were added; jmp_buf was moved from C89.
commit hash: 1c27917347bc381764bea75faa91f1f86362bf51 commit hash: 1c27917347bc381764bea75faa91f1f86362bf51 commit hash: 1c27917347bc381764bea75faa91f1f86362bf51 commit hash: 1c27917347bc381764bea75faa91f1f86362bf51 1c27917
Monday, 3 Jan 2022
16:03 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: upgrade to 11.10

ChangeLog:
Pre-C99 implicit int
Added more support for pre-C99 implicit int:

explain *p                          // pointer to int
explain *p, i                       // pointer to int, int
explain *a[4]                       // array 4 of pointer to int
explain *f()                        // function returning pointer to int
explain (*p)                        // pointer to int -- unnecessary ()
const void function parameters
const (and volatile) qualifiers for void as a function "parameter" (even via a
typedef) are now correctly flagged as an error:

void f1(void);                      // OK
void f2(const void);                // error

typedef void Void;
void f3(Void);                      // OK

typedef const void CVoid;
void f4(CVoid);                     // error
Redefinition check in C++
C++ doesn't support tentative definitions, so:

int i, i;                           // OK in C; error in C++
is always an error in C++ even if the types match.

Restricted pointer to non-object
A restricted pointer to a non-object, e.g., function, is now correctly flagged
as an error:

int (*restrict pf)();               // error
commit hash: d281b7895b7edda53d5648b14e3653718b694133 commit hash: d281b7895b7edda53d5648b14e3653718b694133 commit hash: d281b7895b7edda53d5648b14e3653718b694133 commit hash: d281b7895b7edda53d5648b14e3653718b694133 d281b78
Wednesday, 22 Dec 2021
18:32 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update to 11.9

ChangeLog:
Fixed reading from stdin
Fixed reading from stdin when it's not a TTY.

Redefinition check
Names being redefined with a different type in the same declaration are now
correctly forbidden:

int i, i;                           // OK (tentative definition)
int j, *j;                          // error: different type
Function-like parameter redefinition check
Function-like parameters are now checked for redefinition (more than one
parameter having the same name).

More C++ standard types
Added the standard C++ types std::ispanstream, std::stacktrace_entry, and
std::wispanstream.
commit hash: 60c384addef0ae59cf599daf65aaf8986d5c176d commit hash: 60c384addef0ae59cf599daf65aaf8986d5c176d commit hash: 60c384addef0ae59cf599daf65aaf8986d5c176d commit hash: 60c384addef0ae59cf599daf65aaf8986d5c176d 60c384a
Tuesday, 14 Dec 2021
18:14 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update 11.8

ChangeLog:
New cdecl keywords
There are now the new pseudo-English keywords of evaluation (plus eval as a
shorthand), expression (plus expr), and initialization (plus init) that can
optionally be used after constant (or const) instead of consteval, constexpr, or
constinit, respectively:

c++decl> declare f as constant expression function returning int
constexpr int f();
There are now the new pseudo-English keywords of maybe, unused, thread, local,
as well as discard, except, and return that can be used after no that can be
used instead of maybe_unused, thread_local, nodiscard, noexcept, and noreturn.

Fixed reading of stdin
The "no files as arguments" change broke reading of stdin; fixed.
commit hash: b311b6c2d28f42970a291eec3dda5b1d2815c736 commit hash: b311b6c2d28f42970a291eec3dda5b1d2815c736 commit hash: b311b6c2d28f42970a291eec3dda5b1d2815c736 commit hash: b311b6c2d28f42970a291eec3dda5b1d2815c736 b311b6c
Saturday, 11 Dec 2021
02:04 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update to 11.7

ChangeLog:
Cdecl keywords
When an unexpected name token is encountered, if said token is a cdecl keyword,
it's now mentioned in the error message:

cdecl> declare ptr as pointer to void
               ^
16: syntax error: "ptr": name expected ("ptr" is a cdecl keyword)
Additionally, cdecl keywords are now also offered in suggestions.

register arrays
register arrays are now correctly allowed.

Zero-sized arrays
Zero-sized arrays are now correctly forbidden.

No files as arguments
Command-line arguments were treated as files if they weren't commands.
This dubious use-case was a hold-over from the original cdecl and has
been removed. (If you want to read a file use -f.)
commit hash: fca70e75bb04954ece4cf91489ee69a16befd5bf commit hash: fca70e75bb04954ece4cf91489ee69a16befd5bf commit hash: fca70e75bb04954ece4cf91489ee69a16befd5bf commit hash: fca70e75bb04954ece4cf91489ee69a16befd5bf fca70e7
Friday, 3 Dec 2021
18:37 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update to 11.6

ChangeLog:
C++23 integer literal suffixes
The case-insensitive integer literal suffixes of uz and zu for size_t and z for
ssize_t are now supported.

C++23 operator[]
Now allowing operator[] to have zero or more arguments starting in C++23.

Fixed bug with array of function
Given:

cdecl> explain int f[5](double)
declare f as function (double) returning int
cdecl (1) incorrectly elided the array and therefore (2) didn't report the array
of function as an error.

typedef of function
typedefs of function are now correctly allowed:

typedef int F(void)
commit hash: b63b0b78852ff7dbe64c89dcded75dce7b3ecb25 commit hash: b63b0b78852ff7dbe64c89dcded75dce7b3ecb25 commit hash: b63b0b78852ff7dbe64c89dcded75dce7b3ecb25 commit hash: b63b0b78852ff7dbe64c89dcded75dce7b3ecb25 b63b0b7
Thursday, 11 Nov 2021
15:03 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: update to 11.5.

ChangeLog:
Better error/warning locations
Locations for error and warning messages have been improved.

show error improvement
The show command now correctly prints all possible commands to define a type
when requested to show a type that doesn't exist.

register warnings
A deprecated warning is now printed for a register array, enum, class, struct,
union, pointer, pointer to member, reference, and rvalue reference between C++11
and C++14. (Previously, a warning was printed only for built-in types and
typedefs.)

K&R function parameter printed as int
For functions having K&R C typeless parameters, int is now printed in C89 and
later since such parameters are implicitly int.

show using before C++11
A show using before C++11 now prints an error.

Help output
Tweaked help output.
commit hash: fee842928fc917b84ddbadefffe429849d1dd42e commit hash: fee842928fc917b84ddbadefffe429849d1dd42e commit hash: fee842928fc917b84ddbadefffe429849d1dd42e commit hash: fee842928fc917b84ddbadefffe429849d1dd42e fee84292
Tuesday, 19 Oct 2021
14:52 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: upgrade 11.2->11.4

ChangeLog:
11.3:
Added explicit-ecsu option
Both an --explicit-csu/-S command-line and explicit-ecsu set option have been
added that set which type keywords enum, class, struct, or union, are included
explicitly in C++ declarations. The default is struct and
union only, so:

c++decl> declare ps as pointer to struct S
struct S *ps;
c++decl> declare pt as pointer to class T
T *pt;
Fixed nested array declaration
Explaining a declaration like:

explain int (a)[4]
is now fixed.

11.4:
_Atomic(T) in C++23
Now supporting the _Atomic(T) macro in C++23.

Fixed pointer to a typedef of void
Declarations like:

typedef void V
explain V *p
are now fixed.

Allow declarations using unknown scoped type names
Previously, cdecl complained about things like:

cdecl> define S as struct S
cdecl> explain S::T x
                  ^
19: error: "T": unknown name
Now, it just assumes the T is a type:

declare x as T of structure S
cvr-qualified _Atomic
const-volatile-restrict-qualified _Atomic types are now correctly forbidden.
commit hash: 156e0517c0f2ead88a55c5a90a63f3d1cbfbcdc6 commit hash: 156e0517c0f2ead88a55c5a90a63f3d1cbfbcdc6 commit hash: 156e0517c0f2ead88a55c5a90a63f3d1cbfbcdc6 commit hash: 156e0517c0f2ead88a55c5a90a63f3d1cbfbcdc6 156e051
Sunday, 3 Oct 2021
23:15 Larry Rosenman (ler) search for other commits by this committer
devel/cdecl: upgrade from 8.0->11.2

See the github repo for all the changes
commit hash: 6fcfe5546ec5199acf57597f3e1dcfb85ea766dc commit hash: 6fcfe5546ec5199acf57597f3e1dcfb85ea766dc commit hash: 6fcfe5546ec5199acf57597f3e1dcfb85ea766dc commit hash: 6fcfe5546ec5199acf57597f3e1dcfb85ea766dc 6fcfe55
Thursday, 30 Jul 2020
20:18 ler search for other commits by this committer
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.
Original commitRevision:543832 
Monday, 13 Jul 2020
15:26 ler search for other commits by this committer
devel/cdecl: update to 7.4.1.

Allowing signed main()
The legal signed main() signature is now accepted.

Ignoring east-const in English
East const is now ignored when explaining gibberish.

Disallowing reference to reference
References to references are now errors.
Original commitRevision:542144 
Thursday, 2 Jul 2020
01:57 ler search for other commits by this committer
devel/cdecl: update to 7.4.

Bison debugging change
Changed --enable--yydebug configure option to --enable-bison-debug, --yydebug/-y
cdecl options to --bison-debug/-B, and yydebug to bison-debug set option.

Added Flex debugging
Added --enable-flex-debug configure option, --flex-debug/-F cdecl options, and
flex-debug set option.

Fixed set options
Finally fixed parsing of set options.
Original commitRevision:541005 
Monday, 29 Jun 2020
16:35 ler search for other commits by this committer
devel/cdecl: upgrade to 7.3.

Checking main()s signature
The signature of main() is now checked.

More C standard types
Added the standard C types atomic_flag, double_t, fenv_t, fexcept_t, float_t,
jmp_buf, memory_order, va_list, wctrans_t, and wctype_t.

Fixed explaining pointer-to-array function arguments
Explaining a declaration like:

cdecl> explain void f(double (*a)[5])
crashed; fixed.
Original commitRevision:540813 
Monday, 15 Jun 2020
19:21 ler search for other commits by this committer
devel/cdecl: upgrade to 7.2.

- changelog:
new & delete operator overloading
Added support for composing and deciphering C++ overloaded new, new[], delete,
and delete[] operators.

extern &static functions
extern or static functions can not be const.

English scoped types
Given:

struct S { typedef int Int; }
explain S::Int x
the explanation is:

declare x as Int of structure S
but English types ("T of ...") weren't legal in cdecl's grammar. They are now.

More C++ std types
Added types std::align_val_t, std::destroying_delete_t, and std::nothrow_t.

throw() put back
throw is still a keyword so it was put back in C++20.

Fixed user-defined literal argument
Explicitly specifying int is now accepted.
Original commitRevision:539270 
Tuesday, 26 May 2020
17:25 ler search for other commits by this committer
devel/cdecl: upgrade to 7.1.

dded more GNU extensions
Added GNU C's __complex, __complex__, __const, __inline, __restrict, __signed,
__signed__, __volatile, and __volatile__.

_Bool in C
In C, _Bool is now emitted rather than bool.

register removed
register is now removed (but still reserved) in C++17 and later.
Original commitRevision:536642 
Friday, 15 May 2020
19:22 ler search for other commits by this committer
devel/cdecl: upgrade to 7.0.

East const
New -E/--east-const command-line and east-const set options to use "east const"
in gibberish:

cdecl> declare x as const int
int const x;
Correct scope names for nested types
Previously, scope names for nested types were always printed as "of scope"; now
they print the type of scope (class, struct, union, or namespace):

c++decl> struct S { typedef int Int; };
c++decl> explain S::Int x
declare x as Int of structure S
Declare const/volatile user-defined conversion operators
Can now declare const/volatile user-defined conversion operators.

no_unique_address
Added support for the [[no_unique_address]] attribute in C++20.

Typename
Now allowing typename in declarations (even though it's not needed):

struct S { typedef int I; };
explain typename S::I x
typedef typename S::I T
throw() deprecated/removed
throw() has been deprecated starting with C++11 and removed in C++20.

Fixed unknown type in typedef
Fixed a crash caused by a case like:

define S as struct S
explain S::T x
Original commitRevision:535320 
Monday, 27 Apr 2020
16:05 ler search for other commits by this committer
devel/cdecl: upgrade to 6.11.

Added __inline__, __restrict__, and __thread
Added GNU C's __inline__, __restrict__, and __thread.

Added GNU C types
The GNU C types _Decimal32, _Decimal64, _Decimal128, _Float128, __float128,
_Float16, __fp16, __ibm128, _Float64x, __float80, and __int128 were added to the
set of predefined types.

Added WIN32 types
All of the Windows types, e.g., DWORD, HANDLE, INT, etc., given here were added
to the set of predefined types.

Fixed retypedef
Fixed a crash caused by a case like:

typedef int I
typedef I J
typedef I J
Original commitRevision:533148 
Monday, 13 Apr 2020
17:09 ler search for other commits by this committer
devel/cdecl: update to 6.10

Added __auto_type
Added GNU C's __auto_type.

Fixed long long C version
The long long type was incorrectly allowed in C89; it wasn't added until C99.

Added pthread.h, threads.h, and C++ thread types
The types pthread_t, pthread_barrier_t, pthread_barrierattr_t, pthread_cond_t,
pthread_condattr_t, pthread_mutex_t, pthread_mutexattr_t, pthread_once_t,
pthread_rwlock_t, pthread_rwlockattr_t, and pthread_spinlock_t from <pthread.h>
(POSIX); the types thrd_t, cnd_t, mtx_t, once_flag, thrd_start_t, tss_dtor_t,
and tss_t from <thread.h> (C11); and std::thread (C++11) and std::jthread
(C++20) from <thread> to the set of predefined types.
Original commitRevision:531619 
Thursday, 27 Feb 2020
23:08 ler search for other commits by this committer
devel/cdecl: upgrade to 6.9.

Cast accepts as and to
The cast command now accepts as and to in addition to into.

Autocomplete of explain-by-default
Autocomplete was missing explain-by-default; fixed.
Original commitRevision:527312 
Tuesday, 21 Jan 2020
21:39 ler search for other commits by this committer
devel/cdecl: update to 6.8.1.

- Reset lexer start-state
In 6.8, start states were added to the lexer. Resetting the lexer now includes
also resetting the start state.
Original commitRevision:523746 
Monday, 13 Jan 2020
17:04 ler search for other commits by this committer
devel/cdecl: upgrade to 6.8.

Added set lang=lang
Since the set explicit-int option was added (an option that takes a value), a
set lang=lang option was added.
Original commitRevision:522897 
Tuesday, 7 Jan 2020
15:40 ler search for other commits by this committer
devel/cdecl: update to 6.7.

Explicit int in English
Previously when explaining integer declarations, int was implicit:

cdecl> explain unsigned x
declare x as unsigned
Now int is explicit:

cdecl> explain unsigned x
declare x as unsigned int
Added explicit-int option
Both a command-line --explicit-int/-I and explicit-int set option have been
added that set which integer types have int explicitly included in declarations.
Original commitRevision:522340 
Thursday, 12 Dec 2019
15:57 ler search for other commits by this committer
devel/cdecl: update to 6.6.2.

Added atomic_char8_t
Added atomic_char8_t typedef for C++20.

Fixed flex & bison dependency
Now insists on flex & bison only when lexer.c & parser.c don't exist (i.e., when
building from a git clone that doesn't include those files rather than an
official release that does).

Explicit structure definition error
Structure declarations (that were never supported) now produce a specific error
message:

cdecl> explain struct S { int x; };
                        ^
18: error: structure definitions are not supported
Fixed libreadline & libcurses dependency
Moved check for libcurses before libreadline since some implementations of the
latter depend on the former (e.g., Solaris 11).

More gcc warnings
Enabled more gcc warnings and fixed them.

thread-local
Added this (with a -) as an English synonym for thread_local (with an _).
Original commitRevision:519940 
Thursday, 31 Oct 2019
17:17 ler search for other commits by this committer
devel/cdecl: update to 6.6.1.

Fixed upgrade install
When installing an upgrade, no longer fails when a c++decl symbolic link already
exists.
Original commitRevision:516180 
Wednesday, 23 Oct 2019
20:38 ler search for other commits by this committer
devel/cdecl: upgrade to 6.6.

Release Notes:
Defaulted & deleted support
Defaulted & deleted special member functions are now supported.

Explain-by-default option
Both a command-line --explain/-e and explain-by-default set option have been
added that assume a command that doesn't start with any command means explain.

Set option abbreviations
Unambiguous set option name abbreviations may now be used.

Virtual constexpr
Virtual constexpr declarations are now only correctly allowed in C++20.
Original commitRevision:515309 
Wednesday, 24 Jul 2019
17:43 ler search for other commits by this committer
devel/cdecl: update to 6.5.1.

Complete storage-class-like constructors
Previously, only explicit was supported for constructors. Now all of constexpr,
explicit, friend, inline, and
   noexcept (or throw()) are supported.
Original commitRevision:507291 
Monday, 15 Jul 2019
20:34 ler search for other commits by this committer
devel/cdecl: update to 6.5.

Much better alternative tokens support
Alternative tokens (and, and_eq, etc.) are now parsed correctly in all cases.
Additionally, alternative tokens can be emitted via the new set alt-tokens
option.

Changed -q to -p
The --quiet and -q options (that were in the original cdecl) were changed to
--no-prompt and -p so they're more explicit about what they do.

Trigraphs warning
If the trigraphs option is set and the language is C++17 or later, a warning
will be printed (since trigraphs were removed from C++17).

Set command output changed
The set command now only prints the current options. Its help has beed added to
the help command.

Better K&R C prototypes error
The error message given when attempting to use function prototypes in K&R C has
been improved.

--
Original commitRevision:506711 
Wednesday, 26 Jun 2019
04:00 ler search for other commits by this committer
devel/cdecl: upgrade to 6.4.2.

Fixed 32-bit CPU support
Now (again) supports running on 32-bit platforms.

More help
The --help option now prints long options and project URLs.
Original commitRevision:505139 
Friday, 21 Jun 2019
02:15 ler search for other commits by this committer
devel/cdecl: update to 6.4.1.

Fixed use of GNU Readline
Several things relating to the use of GNU Readline were fixed.

(I (ler) reported the warnings, and bison warnings that were
also fixed).
Original commitRevision:504754 
Wednesday, 19 Jun 2019
13:22 ler search for other commits by this committer
devel/cdecl: update to 6.4.

Added support for user-defined conversion operators
Now supports C++ user-defined conversion operators.

cdecl> explain operator int const*() const
declare constant user-defined conversion operator returning pointer to constant
int
Added support for alignment specifiers
Now supports C11 _Alignas and C++11 alignas specifiers.

cdecl> explain _Alignas(64) int x
declare x as int aligned as 16 bytes
Added more predefined typedefs
More predefined typedefs were added: fd_set, nfds_t, and sigset_t.

Reported by:	portscout
Original commitRevision:504546 
Thursday, 23 May 2019
17:34 ler search for other commits by this committer
devel/cdecl: Upgrade to 6.3.2.

Added missing virtual for destructor
Added virtual that was missing from the help and man page for destructor.
Original commitRevision:502345 
05:15 ler search for other commits by this committer
devel/cdecl: upgrade to 6.3.1.

Added support for noexcept constructors
Constructors can now be noexcept.

Added support for noexcept and virtual destructors
Destructors can now be noexcept and/or virtual.
Original commitRevision:502308 
Wednesday, 22 May 2019
13:49 ler search for other commits by this committer
devel/cdecl: upgrade to 6.3.

Added support for constructors & destructors
Now supports C++ constructors & destructors.

Split up help command output
The output of the "help" command has been split into "command" and "english"
because the output has gotten too big for an 80x24 screen.
Original commitRevision:502270 
Saturday, 11 May 2019
22:37 ler search for other commits by this committer
devel/cdecl: upgrade to 6.2.

Added C++11 user-defined literal support
Added support for user-defined literals. For example:

cdecl> explain int operator"" _a(unsigned long long x)
declare _a as user-defined literal (x as unsigned long long) returning int
More commands as first argument
More commands (define, namespace, set, static, typedef, and using) are now
recognized as such when they are the first argument.

Added support for char8_t
Now supports C++20's char8_t.

Added support for more standard types
Added typedef declarations for div_t, imaxdiv_t, ldiv_t, lldiv_t, sig_atomic_t,
streambuf, streamoff, streamsize, and wstreambuf.
Original commitRevision:501311 
Wednesday, 17 Apr 2019
09:55 ler search for other commits by this committer
devel/cdecl: update to 6.1.

Final or override now implies virtual
Either final or override in a function's signature now implies it's virtual:

cdecl> explain void f() override
declare f as overridden virtual member function returning void

Reported by:	portscout
Original commitRevision:499166 
Sunday, 31 Mar 2019
02:58 ler search for other commits by this committer
devel/cdecl: update to 6.0.2

Added strndup()
Added Gnulib's strndup() for systems that don't have it.

Fixed cast warning
Fixed "cast to pointer from integer of different size" on some compilers.
Original commitRevision:497377 
Tuesday, 26 Mar 2019
17:37 ler search for other commits by this committer
devel/cdecl: update to 6.0.1.

6.0 release notes:
Added C++ scoped name support
Added support for scoped names in C++. For example:

cdecl> explain int S::x
declare x of scope S as int
cdecl> define S::T as struct T; explain S::T x
declare x as T of scope S
Added partial namespace support
Specifically, you can now perform typedef and using declarations within
namespaces or inline namespaces:

c++decl> namespace S { inline namespace T { typedef int Int; } }
c++decl> show user typedef
namespace S::T { typedef int Int; }

6.0.1 release note:
Fixed undefined uint64_t
Fixed a compile-time error on some platforms.

Reported by:	portscout
Original commitRevision:496902 
Thursday, 13 Dec 2018
19:50 ler search for other commits by this committer
devel/cdecl: Update to 5.2.

Added digraph and trigraph support
Added support for digraphs and trigraphs.
Original commitRevision:487379 
Saturday, 8 Dec 2018
19:51 ler search for other commits by this committer
devel/cdecl: Update to 5.1

Added C++20 support
Specifically, consteval functions, operator<=>(), and predefined typedefs were
added: partial_ordering, strong_equality, strong_ordering, weak_equality, and
weak_ordering.

Added C18 support
Since C18 is only a bugfix version, "C18" is merely recognized as a valid
version of C.
Original commitRevision:486984 
Saturday, 1 Dec 2018
15:30 ler search for other commits by this committer
devel/cdecl: update to 5.0.

pet portlint.

Added all C/C++ keywords
All C/C++ keywords have been added to the lexer/parser to prevent declaring
variables or functions having names that are keywords. For example:

declare break as int
is now correctly reported as an error.

Additionally, names that are keywords is later versions of C/C++, while legal,
now issue warnings, e.g.:

cdecl> declare class as int
               ^
18: warning: "class" is a keyword in C++98
int class;
Operator overloading
Added support for composing and deciphering C++ overloaded operators.

Fixed const/volatile reference
Declarations of the form:

declare r as const reference to int
declare r as volatile reference to int
are now correctly reported as an error.

Added member/non-member to functions
You can now explcitly specify either "member" or "non-member" in declarations:

declare f as const member function
Additionally, cdecl will include "member" in function explanations when it can
infer a function is a member function:

cdecl> explain void f() const
declare f as constant member function returning void
Fixed friend const/volatile/override/final/virtual/reference functions
Declarations of the form:

declare f as friend const function returning bool
are now correctly reported as an error.
Original commitRevision:486374 
Monday, 8 Oct 2018
16:45 ler search for other commits by this committer
devel/cdecl: update to 4.8.

Show command improvement
The show command can now show the definition of a type in English
(same as before, but now the default) or in gibberish as a typedef
(new, optional).

Note also that the trailing types keyword has been removed from
the command: it wasn't needed.
Original commitRevision:481550 
Tuesday, 11 Sep 2018
16:41 ler search for other commits by this committer
devel/cdecl: update to 4.7.

Added more predefined typedefs
More predefined typedefs were added: blkcnt_t, blksize_t, clockid_t, clock_t,
dev_t, errno_t, FILE, fpos_t, gid_t, in_addr_t, ino_t, in_port_t, mbstate_t,
mode_t, nlink_t, off_t, pid_t, rlim_t, rsize_t, sa_family_t, socklen_t,
suseconds_t, time_t, uid_t, useconds_t, and wint_t.
Original commitRevision:479535 
Sunday, 1 Jul 2018
21:22 ler search for other commits by this committer
devel/cdecl: update to 4.6.1:
Fixed explaining of unnamed array function arguments
Explaining unnamed array function arguments like:

void f(char[])
now works.
Original commitRevision:473683 
19:50 ler search for other commits by this committer
devel/cdecl: update from 4.4.3 to 4.6

4.5 Release Notes:
Using declarations
Added support for C++11's using declarations as a synonym for typedef.

4.6 Release Notes:
Explain using declarations
Added support for explaining C++11's using declarations.

Notified by: portscout
Original commitRevision:473679 
Monday, 19 Mar 2018
01:08 ler search for other commits by this committer
devel/cdecl: update to 4.4.3.
Minor fix to red-black tree code.
Now initializing node->parent to NIL.
Original commitRevision:464974 
Sunday, 5 Nov 2017
19:50 ler search for other commits by this committer
devel/cdecl: upgrade to 4.4.2.

Fixed declare of function with an invalid argument
A declaration like:

declare f as function (x as unknown_type)
now correctly reports the unknown type.
Original commitRevision:453559 
Sunday, 29 Oct 2017
19:56 ler search for other commits by this committer
devel/cdecl: update to 4.4.1

Fixed typedef of pointer-to-function
A typedef like:

typedef void (*f)(int)
now works correctly.

Added CONFIGURATION FILE section
The cdecl(1) man page now contains a CONFIGURATION FILE section.
Original commitRevision:453132 
Thursday, 26 Oct 2017
19:53 ler search for other commits by this committer
devel/cdecl: upgrade to 4.4.

Added C++ attribute specifier support
The C++ attrribute specifiers carries_dependency, deprecated, noreturn,
maybe_unused, and nodiscard are now supported.
Original commitRevision:452949 
Saturday, 14 Oct 2017
23:50 ler search for other commits by this committer
devel/cdecl: update to 4.3:
Added C99 _Imaginary number support
C99 _Imaginary number declarations are now supported.

External
The keyword external is now a synonym for extern.

More English for explain
More English synonyms are used in explanations, e.g.:

declare x as automatic
declare x as constant int
declare x as enumeration E
declare x as structure S
Original commitRevision:452095 
09:11 ler search for other commits by this committer
devel/cdecl: update to 4.2.

Added noexcept and throw() support
Function declarations may now include exception specifications.

Fixed handling of leading whitespace in command-line argument
The unusual case of:

cdecl ' declare x as int'
i.e., a quoted argument having leading whitespace, is now handled correctly.
Original commitRevision:452049 
Monday, 9 Oct 2017
19:53 ler search for other commits by this committer
devel/cdecl: upgrade to 4.1.

New C11 standard atomic types
The following C11 atomic types are now supported via the new typedef command:
atomic_bool, atomic_char, atomic_schar, atomic_char16_t, atomic_char32_t,
atomic_wchar_t, atomic_short, atomic_int, atomic_long, atomic_llong,
atomic_uchar, atomic_ushort, atomic_uint, atomic_ulong, atomic_ullong,
atomic_ptrdiff_t, atomic_size_t, atomic_intmax_t, atomic_intptr_t,
atomic_uintptr_t, atomic_uintmax_t, atomic_int_fast8_t, atomic_int_fast16_t,
atomic_int_fast32_t, atomic_int_fast64_t, atomic_uint_fast8_t,
atomic_uint_fast16_t, atomic_uint_fast32_t, atomic_uint_fast64_t,
atomic_int_least8_t, atomic_int_least16_t, atomic_int_least32_t,
atomic_int_least64_t, atomic_uint_least8_t, atomic_uint_least16_t,
atomic_uint_least32_t, and atomic_uint_least64_t.

Fixed typedef and define commands with storage classes
Typedef and define now prohibit storage classes, e.g.:

typedef static int sint;
is now correctly reported as an error.
Original commitRevision:451635 
Friday, 22 Sep 2017
13:19 ler search for other commits by this committer
devel/cdecl: upgrade to 4.0.
Added C++17 support
Specifically, inline variable declarations are now supported.

New typedef and define commands
New typedef gibberish and define english commands have been added to allow new
types to be defined that can then be used in subsequent declarations and
explanations.

New C99 standard types
The following C99 types are now supported via the new typedef command:
int8_t, int16_t, int32_t, int64_t, int_fast8_t, int_fast16_t, int_fast32_t,
int_fast64_t, int_least16_t, int_least32_t, int_least64_t, int_least8_t,
intmax_t, intptr_t, ptrdiff_t, uint8_t, uint16_t, uint32_t, uint64_t,
uint_fast8_t, uint_fast16_t, uint_fast32_t, uint_fast64_t, uint_least8_t,
uint_least16_t, uint_least32_t, uint_least64_t, uintmax_t, and uintptr_t.

New --no-typedefs/-t command-line options
Either of these options suppresses the definition of the standard C99 types.

Reads configuration file
Upon start-up and if it exists, reads ~/.cdeclrc (by default) for
user-definedtypedef or define commands.

New --config/-c command-line options
These options specify an alternate configuration file to read upon start-up. As
a result, the -c option in earlier versions of cdecl used to specify when to
colorize output has been renamed to -k.

New --no-config/-C command-line options
These options suppress the reading of a configuration file, even one
explicitlyspecified via --config/-c.

New show command
A new show command has been added to show the definition of either predefined or
user-defined types.

Register warning
The use of register now triggers a warning in C++11 and later.

Reported by:	portscout
Original commitRevision:450371 
Wednesday, 30 Aug 2017
18:06 ler search for other commits by this committer
devel/cdecl: upgrade to 3.6.
First word of first argument
The first word of the first non-option command-line argument is now also checked
to see
if it's a command thus allowing fully quoted strings:

$ cdecl 'explain int *const p'
Original commitRevision:448994 
Sunday, 27 Aug 2017
03:26 ler search for other commits by this committer
devel/cdecl: upgrade to 3.5

Added ssize_t
Similar to size_t, support for ssize_t has been added.
Original commitRevision:448798 
Monday, 17 Jul 2017
17:45 ler search for other commits by this committer
devel/cdecl: update to 3.4.1
Fixed new-style casts C++ version
New-style casts are now permitted as far back as C++98.
Original commitRevision:446085 
Friday, 14 Jul 2017
17:52 ler search for other commits by this committer
devel/cdecl: update to 3.4.

Static & type-qualified arrays
Added support for C99 static and type-qualified array function arguments, e.g.:

    void f( int a[static const 10] );
Variable length arrays
Added support for C99 variable length array function arguments, e.g.:

    void f( int a[*] );
    void g( int a[const *] );
Help command-line argument
Now prints the help message and exits if the first command-line argument is
"help".

Fixed reference to array
The generated gibberish for "reference to array" has been fixed.
Original commitRevision:445800 
Wednesday, 7 Jun 2017
17:22 ler search for other commits by this committer
Update devel/cdecl to 3.3.

Help command-line option
Added the command-line options of -h or --help that prints the usage message.

Fixed const pointers to members
Explaining const/volatile pointers to members now works.
Original commitRevision:442855 
Tuesday, 30 May 2017
01:48 ler search for other commits by this committer
devel/cdecl: upgrade to 3.1

**C++ new-style casts**
Added support for C++ new-style casts.

**Language-sensitive autocompletion**
Autocompletion is now language-sensitive in that it will not offer completions
that are not valid in the current language.

**Context-sensitive autocompletion**
Autocompletion is now slightly more context-sensitive in that it will offer only
command keywords for the first word in the input.

**Fixed command-line error printing**
Command-line input is now printed when there's an error.
Original commitRevision:442043 
Monday, 29 May 2017
11:58 ler search for other commits by this committer
Update devel/cdecl to 3.1.5

**Fixed color prompt caret position**
The position of the caret in error messages when using color prompts has been
fixed.
Original commitRevision:441981 
Wednesday, 24 May 2017
19:51 ler search for other commits by this committer
devel/cdecl upgrade to 3.1.4:

Fixed cv-qualifier in help
The <cv-qualifier> in the help text was missing .
Original commitRevision:441611 
Saturday, 6 May 2017
15:32 ler search for other commits by this committer
devel/cdecl: upgrade to 3.1.3
Fixed synonyms in explain
Explanations no longer wrongly allow English synonyms.

Approved by:	adamw (mentor, implicit)
Original commitRevision:440278 
Friday, 5 May 2017
23:17 ler search for other commits by this committer
devel/cdecl: upgrade to 3.1.2

Fixed declarations with storage-class
Declarations like:

declare x as static pointer to function returning int
declare x as type pointer to function returning int
are fixed.

Approved by:	adamw (mentor, implicit)
Original commitRevision:440207 
Wednesday, 3 May 2017
12:16 mat search for other commits by this committer
Simplify USE_GITHUB usage.

Sponsored by:	Absolight
Original commitRevision:440009 
Monday, 1 May 2017
01:54 ler search for other commits by this committer
devel/cdecl: upgrade to 3.1.1

Parallel builds
Parallel builds were fixed.

Manual page caveats
Added additional caveats: qualified C++ data members or member functions
    are not supported.

Approved by:	adamw (mentor, implicit)
Original commitRevision:439858 
00:39 ler search for other commits by this committer
devel/cdecl: upgrade to new major version 3.1

	This version fixes virtually all the deficiencies in earlier versions as well
as adds many new features, most notably:

Using GNU Autotools for building.
Command-line long-options.
Distinguishes among K&R C, C89, C95, C99, C11, C++98, C++03, C++11, and C++14.
Support for C11 and C++11 types bool, char16_t, char32_t, complex, restrict,
size_t, thread_local, and wchar_t.
Support for inline function declarations.
Support for typedef declarations.
Support for variadic function arguments.
Support for C++11 constexpr, enum class, mutable, rvalue references, and the
function trailing return-type syntax.
Support for const, final, friend, override, volatile, virtual, pure virtual, and
ref-qualified C++ member function declarations.
Better warning and error messages complete with location information and color.

Take Maintainer'ship.

Submitted by:	paul@lucasmail.org
Approved by:	adamw (mentor, implicit)
Original commitRevision:439855 
Sunday, 3 Jul 2011
14:59 ohauer search for other commits by this committer
-remove MD5
Original commit
Thursday, 24 Nov 2005
15:40 pav search for other commits by this committer
- Add some SHA256 checksums
Original commit
Thursday, 29 Jan 2004
07:24 trevor search for other commits by this committer
SIZEify.
Original commit

Number of commits found: 81