Donald Trump has awarded the Presidential Medal of Freedom to the controversial right-wing radio host Rush Limbaugh during his State of the Union address, asking the first lady to put it round his neck while Republican politicians cheered.

The conservative commentator, who announced this week that he had stage four lung cancer, appeared overwhelmed by the honour, putting his hands together as if in prayer.

The president said: "Almost every American family knows the pain when a loved one is diagnosed with a serious illness. Here tonight is a special man, someone beloved by millions of Americans who just received a Stage 4 advanced cancer diagnosis.

"This is not good news, but what is good news is that he is the greatest fighter and winner that you will ever meet. Rush Limbaugh: Thank you for your decades of tireless devotion to our country.

"Rush, in recognition of all that you have done for our nation, the millions of people a day that you speak to and inspire, and all of the incredible work that you have done for charity, I am proud to announce tonight that you will be receiving our country's highest civilian honour, the Presidential Medal of Freedom. I will now ask the First Lady of the United States to please stand and present you with the honour. Rush, Kathryn, congratulations!"