diff options
author | Akim Demaille <akim.demaille@gmail.com> | 2020-12-02 21:38:43 +0100 |
---|---|---|
committer | Akim Demaille <akim.demaille@gmail.com> | 2021-01-23 09:28:01 +0100 |
commit | 89d2b69c1b926c9dc1da3834ba2a7a924d4e2d4f (patch) | |
tree | c9fb5a47fdfc378489925e5431644d243c834dfe | |
parent | 1e0b0872448debb5e51c6393d11489a8d8166207 (diff) | |
download | bison-89d2b69c1b926c9dc1da3834ba2a7a924d4e2d4f.tar.gz |
c++: use noexcept where appropriate
Reported by Don Macpherson.
https://github.com/akimd/bison/issues/63
https://github.com/akimd/bison/issues/64
* data/skeletons/c++.m4, data/skeletons/lalr1.cc: here.
-rw-r--r-- | data/skeletons/c++.m4 | 6 | ||||
-rw-r--r-- | data/skeletons/lalr1.cc | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/data/skeletons/c++.m4 b/data/skeletons/c++.m4 index 78c66def..5081273f 100644 --- a/data/skeletons/c++.m4 +++ b/data/skeletons/c++.m4 @@ -340,7 +340,7 @@ m4_define([b4_symbol_type_define], } /// Destroy contents, and record that is empty. - void clear () + void clear () YY_NOEXCEPT {]b4_variant_if([[ // User destructor. symbol_kind_type yykind = this->kind (); @@ -424,7 +424,7 @@ m4_define([b4_symbol_type_define], by_kind (kind_type t); /// Record that this symbol is empty. - void clear (); + void clear () YY_NOEXCEPT; /// Steal the symbol kind from \a that. void move (by_kind& that); @@ -544,7 +544,7 @@ m4_define([b4_public_types_define], {} ]b4_inline([$1])[void - ]b4_parser_class[::by_kind::clear () + ]b4_parser_class[::by_kind::clear () YY_NOEXCEPT { kind_ = ]b4_symbol(-2, kind)[; } diff --git a/data/skeletons/lalr1.cc b/data/skeletons/lalr1.cc index b95f9aa9..6214f96f 100644 --- a/data/skeletons/lalr1.cc +++ b/data/skeletons/lalr1.cc @@ -271,9 +271,9 @@ m4_define([b4_shared_declarations], { public: context (const ]b4_parser_class[& yyparser, const symbol_type& yyla); - const symbol_type& lookahead () const { return yyla_; } - symbol_kind_type token () const { return yyla_.kind (); }]b4_locations_if([[ - const location_type& location () const { return yyla_.location; } + const symbol_type& lookahead () const YY_NOEXCEPT { return yyla_; } + symbol_kind_type token () const YY_NOEXCEPT { return yyla_.kind (); }]b4_locations_if([[ + const location_type& location () const YY_NOEXCEPT { return yyla_.location; } ]])[ /// Put in YYARG at most YYARGN of the expected tokens, and return the /// number of tokens stored in YYARG. If YYARG is null, return the |