Vladimir Panteleev: > Doesn't D already solve this?
Yup. > > block = bdev->bd_disk->private_data; > > - base = block->base; > > if (!block) > > return -ENODEV; > > + base = block->base; > > Delphi compilers warn in cases when a condition is always true/false, > because Delphi lacks metaprogramming so such cases are usually due to a > bug. This is a different situation. You need a bit of flow analisys to catch this bug (to give a state to a type). Bye, bearophile