diff --git a/CppCoreGuidelines.md b/CppCoreGuidelines.md
index 98ec6a3..ff6bd38 100644
--- a/CppCoreGuidelines.md
+++ b/CppCoreGuidelines.md
@@ -7255,7 +7255,7 @@ Union rule summary:
* [C.180: Use `union`s to save Memory](#Ru-union)
* [C.181: Avoid "naked" `union`s](#Ru-naked)
* [C.182: Use anonymous `union`s to implement tagged unions](#Ru-anonymous)
-* [C183: Don't use a `union` for type punning](#Ru-pun)
+* [C.183: Don't use a `union` for type punning](#Ru-pun)
* ???
### C.180: Use `union`s to save memory
@@ -7338,8 +7338,8 @@ The soon-to-be-standard `variant` type (to be found in ``) does that fo
##### Reason
-A well-designed tagged usin is type safe.
-An *anonymous* union simplifies the definition of a class with a (tag,union) pair.
+A well-designed tagged union is type safe.
+An *anonymous* union simplifies the definition of a class with a (tag, union) pair.
##### Example
@@ -7348,7 +7348,7 @@ You can look there for an explanation.
The code is somewhat elaborate.
Handling a type with user-defined assignment and destructor is tricky.
-Saving programmers from haing to write such code is one reason for including `variant` in the standard.
+Saving programmers from having to write such code is one reason for including `variant` in the standard.
class Value { // two alternative representations represented as a union
private:
@@ -7450,7 +7450,7 @@ Type punning using a `union` is a source of errors.
unsigned char c[sizeof(int)];
};
-The idea of `Pun` is to be able to look at the characte representation of an `int`.
+The idea of `Pun` is to be able to look at the character representation of an `int`.
void bad(Pun& u)
{
@@ -9081,7 +9081,7 @@ Can cause maintenance problems.
If this is a large `if`-statement, it is easy to overlook that a new `d` has been introduced in the inner scope.
This is a known source of bugs.
-Sometimes suce reuse of a name in an inner scope is called "shadowing".
+Sometimes such reuse of a name in an inner scope is called "shadowing".
##### Note
@@ -10780,11 +10780,11 @@ Avoid wrong results.
##### Example
int x = -3;
- unsigned int y = 7;
-
- cout << x-y << '\n'; // unsigned result, possibly 4294967286
- cout << x+y << '\n'; // unsiged result: 4
- cout << x*y << '\n'; // unsigned result, possibly 4294967275
+ unsigned int y = 7;
+
+ cout << x - y << '\n'; // unsigned result, possibly 4294967286
+ cout << x + y << '\n'; // unsigned result: 4
+ cout << x * y << '\n'; // unsigned result, possibly 4294967275
It is harder to spot the problem in more realistic examples.
@@ -10825,7 +10825,7 @@ can be surprising for many programmers.
##### Reason
Because most arithmetic is assumed to be signed;
-`x-y` yields a negative number when `y>x` except in the rare cases wrhere you really want modulo arithmetic.
+`x-y` yields a negative number when `y>x` except in the rare cases where you really want modulo arithmetic.
##### Example
@@ -16463,7 +16463,7 @@ and errors (when we didn't deal correctly with semi-constructed objects consiste
* Always establish a class invariant in a constructor.
* Don't define an object before it is needed.
-### NR.6: Don't: Place all cleanup actions at the end of a fucntion and `goto exit`
+### NR.6: Don't: Place all cleanup actions at the end of a function and `goto exit`
##### Reason (not to follow this rule)
@@ -16505,7 +16505,7 @@ and spot the bug.
##### Alternative
-* [M]ake member data `public` or (preferably) `private`](#Rh-protected)
+* [Make member data `public` or (preferably) `private`](#Rh-protected)
# RF: References
diff --git a/scripts/hunspell/isocpp.dic b/scripts/hunspell/isocpp.dic
index d2295c2..180a652 100644
--- a/scripts/hunspell/isocpp.dic
+++ b/scripts/hunspell/isocpp.dic
@@ -1,5 +1,6 @@
'
0xFF0000
+0b0101'0101
'14
2D
2K
@@ -47,6 +48,7 @@ BDE
behaviorless
BigPOD
Bjarne
+blog
Bloomberg
Boehm
bool
@@ -181,6 +183,7 @@ gp
GPLv3
gsl
GSL
+GSL's
gx
handcoded
Henricson
@@ -261,6 +264,7 @@ memoized
memset
metameta
metaprogram
+metaprograms
metaprogramming
Metaprogramming
Meyers01
@@ -272,6 +276,7 @@ microbenchmarks
modify1
modify2
moredata
+multithreaded
msgsl
mtx
Murray93
@@ -342,6 +347,7 @@ polymorphically
POPL
PortHandle
PostInitialize
+pp216
PPP
pre
Pre