Let's look at the datasheet and see what it actually means.
Limiting values
Exceeding these will destroy the part. That's how you should think about them. What it actually means is that keeping within the range will not destroy the part, but exceeding them may destroy it. What they don't guarantee is that keeping to the limiting values makes the device operate as intended. You will see that it lists the VDD supply voltage as between -0.5 and +6.0 volts. That doesn't mean it will work with -0.5 volts.
This section merely states that you will not destroy the part if you sink or source less than 50 mA from one I/O pin.
Another important figure here is ISS, ground supply current, which can not exceed 200 mA. The sum of every LED you sink will accumulate to that.
Static characteristics
This is what you should look at in an operational circuit.
The important figure is IOL, LOW-level output current. This is how much current you can sink while still maintaining a certain minimum output voltage. From table 14 in the datasheet:
Symbol |
Parameter |
Conditions |
Min |
Typ |
Max |
Unit |
IOL |
LOW-level output current |
VDD = 2.3 V to 5.5 V; VOL = 0.5 V |
8 |
(8 to 20) |
- |
mA |
|
|
VDD = 2.3 V to 5.5 V; VOL = 0.7 V |
10 |
(10 to 24) |
- |
mA |
Notice that they list two values for VOL: 0.5 V and 0.7 V. What it means is that they guarantee by design and testing that if you sink 8 mA in to one pin, it will not rise more than 0.5 V above ground. If you're lucky, some chips can maintain that limit up to 20 mA, which is what the Typ column shows. You can not bet on that, however.
Correspondingly, they also guarantee that it will not rise more than 0.7 V above ground if you keep within 10 mA.
Now, there's an additional footnote. That is not good documentation design, they should have added it to the main table because it's important. The footnote states:
Each I/O must be externally limited to a maximum of 25 mA and each octal (IO00 to IO07 and IO10 to IO17) must be limited to a
maximum current of 100 mA for a device total of 200 mA.
This is clear: If you want the device to operate properly, you must follow this.
0 V?
This is a response to your comment:
but surely if set an output to 0 the pin will go to 0V?
Only if you don't draw any current (at best). As soon as you start sinking current, the internal equivalent resistance will force the pin voltage to rise.
a MOSFETs drain to source resistance is on the order of 10-100 mOhm
Sure, for a specifically designed power transistor. That's however not what's integrated on these ICs.