When working with the decompiler, you probably spend most of the time in the pseudocode view, since most interactive operations (e.g. renaming, retyping and commenting) can be done right there. IDA is usually smart enough to detect important changes during such actions and update the pseudocode as necessary.
However, occasionally you may perform actions outside of the pseudocode view which potentially affect decompilation, but IDA may not detect it and continue showing stale decompilation. How can you force IDA to use the new information? The following options may be used:
Usually the methods above are enough, but in some cases you may need to reset decompiler caches for a complete refresh.
See also:
Igor’s tip of the week #40: Decompiler basics
Igor’s tip of the week #42: Renaming and retyping in the decompiler
Igor’s tip of the week #102: Resetting decompiler information