XML 113 R85.htm IDEA: XBRL DOCUMENT v2.4.1.9
Retirement Plans (Reconciliation Of Benefit Obligations And Plan Or Trust Assets And Resulting Funded Status Of Defined Benefit Retirement Plans) (Details) (USD $)
In Millions, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Pension Benefits      
Change in Benefit Obligation      
Service cost $ (186)us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
$ (298)us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
$ (266)us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
Interest cost (532)us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(492)us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(523)us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
Actuarial loss 566us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
   
Change in Plan/Trust Assets      
Fair value of assets at beginning of year 8,476us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
   
Employer contributions 513us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
   
Fair value of assets at end of year 9,084us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
8,476us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Other Postretirement Benefit Plans, Defined Benefit      
Change in Benefit Obligation      
Service cost (12)us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(15)us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(12)us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
Interest cost (52)us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(53)us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(59)us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
Actuarial loss 28us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
   
Change in Plan/Trust Assets      
Fair value of assets at beginning of year 519us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
   
Fair value of assets at end of year 553us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
519us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Change in Benefit Obligation [Member] | Pension Benefits      
Change in Benefit Obligation      
Benefit obligation at beginning of year (11,013)us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(12,114)us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Service cost (186)us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(298)us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Interest cost (532)us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(492)us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Amendments (1)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
234us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Actuarial loss (2,083)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
1,094us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Settlement/curtailment/other 64gd_DefinedBenefitPlanSettlementOrCurtailmentOrOther
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
2gd_DefinedBenefitPlanSettlementOrCurtailmentOrOther
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Benefits paid 515gd_DefinedBenefitPlanChangeInBenefitObligationBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
561gd_DefinedBenefitPlanChangeInBenefitObligationBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Benefit obligation at end of year (13,236)us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(11,013)us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Change in Benefit Obligation [Member] | Other Postretirement Benefit Plans, Defined Benefit      
Change in Benefit Obligation      
Benefit obligation at beginning of year (1,183)us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(1,384)us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Service cost (12)us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(15)us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Interest cost (52)us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(53)us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Amendments 55us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
0us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Actuarial loss (30)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
177us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Settlement/curtailment/other 15gd_DefinedBenefitPlanSettlementOrCurtailmentOrOther
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
11gd_DefinedBenefitPlanSettlementOrCurtailmentOrOther
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Benefits paid 77gd_DefinedBenefitPlanChangeInBenefitObligationBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
81gd_DefinedBenefitPlanChangeInBenefitObligationBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Benefit obligation at end of year (1,130)us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(1,183)us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInBenefitObligationMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Change in Plan/Trust Assets [Member] | Pension Benefits      
Change in Plan/Trust Assets      
Fair value of assets at beginning of year 8,476us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
7,227us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Actual return on plan assets 664us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
1,200us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Employer contributions 513us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
601us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Settlement/curtailment/other (65)gd_DefinedBenefitPlanAssetSettlementOrCurtailmentOrOther
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(3)gd_DefinedBenefitPlanAssetSettlementOrCurtailmentOrOther
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Benefits paid (504)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(549)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Fair value of assets at end of year 9,084us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
8,476us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Funded status at end of year (4,152)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(2,537)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Change in Plan/Trust Assets [Member] | Other Postretirement Benefit Plans, Defined Benefit      
Change in Plan/Trust Assets      
Fair value of assets at beginning of year 519us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
426us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Actual return on plan assets 68us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
116us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Employer contributions 6us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
25us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Settlement/curtailment/other (1)gd_DefinedBenefitPlanAssetSettlementOrCurtailmentOrOther
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
0gd_DefinedBenefitPlanAssetSettlementOrCurtailmentOrOther
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Benefits paid (39)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(48)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Fair value of assets at end of year 553us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
519us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Funded status at end of year $ (577)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
$ (664)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= gd_ChangeInPlanTrustAssetsMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember