diff --git a/doc/changelog.txt b/doc/changelog.txt
index 94773dc..1c28499 100644
--- a/doc/changelog.txt
+++ b/doc/changelog.txt
@@ -9,8 +9,11 @@
\page changelog Changelog
- Unreleased
- - Fix UB on invalid index in format strings
-
+ - Breaking changes
+ - Bitwise/binary operators (left/right shift, binary and/or/xor/not) are no longer supported in message catalog files matching GNU gettext behavior
+ - Other improvements and fixes
+ - Fix UB on invalid index in format strings
+ - Use `long long` as the count parameter for pluralized translations
- 1.82.0
- Breaking changes
- `get_system_locale` and dependents will now correctly favor `$LC_ALL` over `LC_CTYPE` as defined by POSIX
diff --git a/doc/messages_formatting.txt b/doc/messages_formatting.txt
index 9509cc2..c3dc6ad 100644
--- a/doc/messages_formatting.txt
+++ b/doc/messages_formatting.txt
@@ -1,5 +1,6 @@
//
// Copyright (c) 2009-2011 Artyom Beilis (Tonkikh)
+// Copyright (c) 2022-2023 Alexander Grund
//
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
@@ -135,11 +136,11 @@ There are two ways to translate messages:
These are functions that are used for direct message translation: they receive as a parameter
an original message or a key and convert it to the \c std::basic_string in given locale.
\n
- These functions have similar names to thous used in the GNU Gettext library.
+ These functions have similar names to those used in the GNU Gettext library.
\subsection indirect_message_translation Indirect Message Translation
-The basic function that allows us to translate a message is \ref boost_locale_translate_family "boost::locale::translate()" family of functions.
+The basic function that allows us to translate a message is the \ref boost_locale_translate_family "boost::locale::translate()" family of functions.
These functions use a character type \c CharType as template parameter and receive either CharType const * or std::basic_string as input.
@@ -533,7 +534,7 @@ key is missing in the dictionary.
- Why doesn't Boost.Locale provide tools for extracting and management of message catalogs. Why should
I use GPL-ed software? Are my programs or message catalogs affected by its license?
\n
- -# Boost.Locale does not link to or use any of the GNU Gettext code, so you need not worry about your code as
+ -# Boost.Locale does not link to or use any of the GNU Gettext code, so you do not need to worry about your code as
the runtime library is fully reimplemented.
-# You may freely use GPL-ed software for extracting and managing catalogs, the same way as you are free to use
a GPL-ed editor. It does not affect your message catalogs or your code.
@@ -554,6 +555,6 @@ key is missing in the dictionary.
a single user like most GUI applications, but is problematic for services and servers.
-# The GNU Gettext API supports only 8-bit encodings, making it irrelevant in environments that natively use
wide strings.
- -# The GNU Gettext runtime library distributed under LGPL license which may be not convenient for some users.
+ -# The GNU Gettext runtime library is distributed under LGPL license which may be not convenient for some users.
*/
diff --git a/include/boost/locale/message.hpp b/include/boost/locale/message.hpp
index 6af616b..ec4a1bd 100644
--- a/include/boost/locale/message.hpp
+++ b/include/boost/locale/message.hpp
@@ -1,5 +1,6 @@
//
// Copyright (c) 2009-2011 Artyom Beilis (Tonkikh)
+// Copyright (c) 2021-2023 Alexander Grund
//
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
diff --git a/src/boost/locale/shared/message.cpp b/src/boost/locale/shared/message.cpp
index 4ff8b7e..0176054 100644
--- a/src/boost/locale/shared/message.cpp
+++ b/src/boost/locale/shared/message.cpp
@@ -1,5 +1,6 @@
//
// Copyright (c) 2009-2015 Artyom Beilis (Tonkikh)
+// Copyright (c) 2021-2023 Alexander Grund
//
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
diff --git a/src/boost/locale/shared/mo_lambda.cpp b/src/boost/locale/shared/mo_lambda.cpp
index c46628e..b0e16d7 100644
--- a/src/boost/locale/shared/mo_lambda.cpp
+++ b/src/boost/locale/shared/mo_lambda.cpp
@@ -1,5 +1,6 @@
//
// Copyright (c) 2009-2011 Artyom Beilis (Tonkikh)
+// Copyright (c) 2021-2023 Alexander Grund
//
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
diff --git a/src/boost/locale/shared/mo_lambda.hpp b/src/boost/locale/shared/mo_lambda.hpp
index 7512dee..ff41517 100644
--- a/src/boost/locale/shared/mo_lambda.hpp
+++ b/src/boost/locale/shared/mo_lambda.hpp
@@ -1,5 +1,6 @@
//
// Copyright (c) 2009-2011 Artyom Beilis (Tonkikh)
+// Copyright (c) 2021-2023 Alexander Grund
//
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
diff --git a/test/test_catalog.cpp b/test/test_catalog.cpp
index 20b33a5..29a34c6 100644
--- a/test/test_catalog.cpp
+++ b/test/test_catalog.cpp
@@ -1,5 +1,6 @@
//
// Copyright (c) 2009-2011 Artyom Beilis (Tonkikh)
+// Copyright (c) 2021-2023 Alexander Grund
//
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
diff --git a/test/test_message.cpp b/test/test_message.cpp
index 4a70297..ae0dbdd 100644
--- a/test/test_message.cpp
+++ b/test/test_message.cpp
@@ -1,5 +1,6 @@
//
// Copyright (c) 2009-2011 Artyom Beilis (Tonkikh)
+// Copyright (c) 2021-2023 Alexander Grund
//
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt