Hi there,
Sorry for the late reply. As mentioned I donāt visit here everyday.
On this matter the warning is triggered by because uint8 only can hold 256 since we include 0 then the greatest number that can be held by that variable is 255. Since we didnāt create another variable to hold this result solidity will assign the result the value of uint8 (same as reputation added).
The compiler thinks it is very likely that an exponentiation will be greater to 255 in which case the value will overflow causing an error at runtime.
The way to fix this is to create another variable of the same type of reputation (uint80) to hold the result. This will hold as much as 2^80-1. Then we have to restrict the value of reputation added to be equal or less than 79. This will make the warning disappear I think. Good catch, I will try to push a fix when I have time.
This is not a very serious issue for you to follow the tutorial though.
Best Regards
Daniel