The description of the ":=" and "=" assignment operators were flipped. As documented in the GNU make manual (https://www.gnu.org/software/make/manual/make.html#Reading-Makefiles), the ":=" assignment operatory is the immediate assignment operation and "=" is the deferred assignment operation. This change switches the descriptions to correspond to the correct operator and augments the description to clarify the behaviour.
As documented in the [GNU Make manual](https://www.gnu.org/software/make/manual/html_node/Automatic-Variables.html), `$%` is only used for files within archive files (which is a feature rarely used in my opinion). The automatic variable `$*` represents the matched part in implicit rules (%.o: %.c), e.g., "foo" for "foo.c".