All assertions are completely useless in the working program while program and parameters are not changed.
Assertions indicates that the developer thinks that this condition is always TRUE at the current place. All assertions prevents invalid program refactoring.

For example, "previous line" can be replaced to something like this:
`ptr_ = (uchar*)(((uintptr_t)allocatedPtr_ + (alignment - 1)) & (-alignment);`
`ptr_ = allocatedPtr_ + ((alignment - 1) - (((size_t)allocatedPtr_ + (alignment - 1)) & (alignment - 1)));`
or use some helper macros for data alignment or std::align().

PS. Assertion moved into `getAlignedPtr()` method.