Fair value measurements - Significant unobservable inputs (Detail) - Significant Unobservable Inputs (Level 3) [Member] - USD ($)
$ in Millions
12 Months Ended
Dec. 31, 2018
Dec. 31, 2017
Dec. 31, 2016
Fair Value Measurements Significant Unobservable Inputs [Line Items]      
Net derivative contract liabilities - Beginning Balance $ (2,069) $ (2,824) $ (3,785)
Net derivative contract liabilities - Gains (losses) included in earnings (118) 888 880
Net derivative contract liabilities - Gains (losses) included in other comprehensive income 2 (3) (2)
Net derivative contract liabilities - Gains (losses) included in regulatory assets and liabilities 3 (1) (11)
Net derivative contract liabilities - Acquisitions 3    
Net derivative contract liabilities - Dispositions and settlements (164) (129) (101)
Net derivative contract liabilities - Transfers into/out of Level 3     195
Net derivative contract liabilities - Ending Balance (2,343) (2,069) (2,824)
Investments in Equity and Fixed Maturity Securities [Member]      
Fair Value Measurements Significant Unobservable Inputs [Line Items]      
Beginning Balance 6 17,321 21,503
Gains (losses) included in earnings     3,593
Gains (losses) included in other comprehensive income   1,157 872
Acquisitions 302   10
Dispositions and settlements (1) (59) (8,656)
Transfers into/out of Level 3   (18,413) (1)
Ending Balance $ 307 $ 6 $ 17,321