Export type erl_scan:location/0
Allow setting of initial position in epp
Create a new "column" option in compile

If set, compile will call epp with a full location {1, 1} instead of 1,
thus making it keep the column numbers in the parsed AST.
Fix printing of errors with column numbers

There was a colon missing after the column number, it must be an error
as it's not missing in list_errors/2.
Test column number reporting in error_SUITE
Fix type compile:err_info/0
Fix messages ordering with column numbers

With L1, L2, C1, C2 integers such as L1 < L2 and C1 < C2, locations
are ordered like this:

  L1 < {L1, C1} < {L1, C2} < L2
Add support for larger integer ranges in per encode/decode

Encoding and decoding of integer ranges can now be done
with an upper bound larger than the previous limit of 16^10.
The new upper bound in per encoding and decodings for constrained
whole numbers is 2^2040 (close to 16^508) which is the limit if
the length field encoding in the encoding of a constrained
whole number is limited to a single octet.

Related support seq: seq12060
Keep encoded octets of constrained whole number value and
range as binaries and use erlang:byte_size to get length
of octets and range. For speed.
Add sorting in constraint checking on single values.

Fix a bug where a subtyped single value integer type where one or more values
were predefined would result in generated encoding code having faulty range
checks. See seq12102.

OTP-10139
In generation of encoding functions for enumeration types,
the values used for generating the range check in case of
a value range should be sorted and have duplicates removed.

For per with optimization (per_rt2ct), sorting has been
added. For both optimized and regular per, the sorting and
duplicate removal code has been simplified.

In case of value range, 'MIN' and 'MAX' is now also checked.

The sorting of constraint values in the check phase remains.
Make n2n option work for enumerated types without extension
markers. Add test enumeration types for testing n2n option
when using the name2num and num2name functions on an
enumeration value not in the extension root of an
enumeration type with extension marker.
Add support for extensible enumeration types in n2n
generated functions.

OTP-10144
Doc fix: link from erlang:now/0 to os:timestamp/0

Sometimes os:timestamp/0 is more appropriate than erlang:now/0.  The
documentation for the former has a link to the latter; this patch adds
a link in the other direction to make os:timestamp/0 more visible.
sys_pre_expand: Fix BASE never being set

Commit a612e99fb5aaa934fe5a8591db0f083d7fa0b20a turned module attributes from
2-tuples to 3-tuples but forgot to update get_base/1, breaking BASE for
parametric modules.
Fix highlighting of atoms ending with a dollar sign

Like this: 'atom$'.  In that example, the last single quote should be
recognised as ending the atom.  This needs a font-lock workaround
similar to the one for strings.
Merge branch 'mh/emacs-mode/atom-dollar/OTP-10178' into maint

* mh/emacs-mode/atom-dollar/OTP-10178:
  Fix highlighting of atoms ending with a dollar sign
Merge branch 'maint'
Merge branch 'mh/doc-now-vs-timestamp/OTP-10180' into maint

* mh/doc-now-vs-timestamp/OTP-10180:
  Doc fix: link from erlang:now/0 to os:timestamp/0
Merge branch 'maint'