summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--THANKS1
-rw-r--r--data/skeletons/lalr1.cc16
-rw-r--r--data/skeletons/stack.hh11
-rw-r--r--data/skeletons/variant.hh14
4 files changed, 37 insertions, 5 deletions
diff --git a/THANKS b/THANKS
index 9d49461e..157efc00 100644
--- a/THANKS
+++ b/THANKS
@@ -57,6 +57,7 @@ Derek M. Jones derek@knosof.co.uk
Di-an Jan dianj@freeshell.org
Dick Streefland dick.streefland@altium.nl
Didier Godefroy dg@ulysium.net
+Don Macpherson donmac703@gmail.com
Efi Fogel efifogel@gmail.com
Enrico Scholz enrico.scholz@informatik.tu-chemnitz.de
Eric Blake ebb9@byu.net
diff --git a/data/skeletons/lalr1.cc b/data/skeletons/lalr1.cc
index 81aff234..2b27088f 100644
--- a/data/skeletons/lalr1.cc
+++ b/data/skeletons/lalr1.cc
@@ -204,6 +204,13 @@ m4_define([b4_shared_declarations],
]b4_parser_class[ (]b4_parse_param_decl[);
virtual ~]b4_parser_class[ ();
+#if 201103L <= YY_CPLUSPLUS
+ /// Non copyable.
+ ]b4_parser_class[ (const ]b4_parser_class[&) = delete;
+ /// Non copyable.
+ ]b4_parser_class[& operator= (const ]b4_parser_class[&) = delete;
+#endif
+
/// Parse. An alias for parse ().
/// \returns 0 iff parsing succeeded.
int operator() ();
@@ -255,10 +262,13 @@ m4_define([b4_shared_declarations],
};
]])[
private:
- /// This class is not copyable.
+#if YY_CPLUSPLUS < 201103L
+ /// Non copyable.
]b4_parser_class[ (const ]b4_parser_class[&);
- ]b4_parser_class[& operator= (const ]b4_parser_class[&);]b4_lac_if([[
-
+ /// Non copyable.
+ ]b4_parser_class[& operator= (const ]b4_parser_class[&);
+#endif
+]b4_lac_if([[
/// Check the lookahead yytoken.
/// \returns true iff the token will be eventually shifted.
bool yy_lac_check_ (symbol_kind_type yytoken) const;
diff --git a/data/skeletons/stack.hh b/data/skeletons/stack.hh
index 6c41fbf8..0fd36258 100644
--- a/data/skeletons/stack.hh
+++ b/data/skeletons/stack.hh
@@ -41,6 +41,13 @@ m4_define([b4_stack_define],
: seq_ (n)
{}
+#if 201103L <= YY_CPLUSPLUS
+ /// Non copyable.
+ stack (const stack&) = delete;
+ /// Non copyable.
+ stack& operator= (const stack&) = delete;
+#endif
+
/// Random access.
///
/// Index 0 returns the topmost element.
@@ -126,8 +133,12 @@ m4_define([b4_stack_define],
};
private:
+#if YY_CPLUSPLUS < 201103L
+ /// Non copyable.
stack (const stack&);
+ /// Non copyable.
stack& operator= (const stack&);
+#endif
/// The wrapped container.
S seq_;
};
diff --git a/data/skeletons/variant.hh b/data/skeletons/variant.hh
index 13a35c6d..b594af38 100644
--- a/data/skeletons/variant.hh
+++ b/data/skeletons/variant.hh
@@ -115,6 +115,13 @@ m4_define([b4_value_type_declare],
new (yyas_<T> ()) T (YY_MOVE (t));
}
+#if 201103L <= YY_CPLUSPLUS
+ /// Non copyable.
+ semantic_type (const self_type&) = delete;
+ /// Non copyable.
+ self_type& operator= (const self_type&) = delete;
+#endif
+
/// Destruction, allowed only if empty.
~semantic_type () YY_NOEXCEPT
{]b4_parse_assert_if([
@@ -258,9 +265,12 @@ m4_define([b4_value_type_declare],
}
private:
- /// Prohibit blind copies.
- self_type& operator= (const self_type&);
+#if YY_CPLUSPLUS < 201103L
+ /// Non copyable.
semantic_type (const self_type&);
+ /// Non copyable.
+ self_type& operator= (const self_type&);
+#endif
/// Accessor to raw memory as \a T.
template <typename T>