Xcode 12.5: DW_TAG_subprogram missing for Swift Computed Variables in dSYM file

Starting with Xcode 12.5 (tested with b2 and b3), the DW_TAG_subprogram for some Swift Computed Variables are missing in the dSYM files. Note that you can also find the radar FB9034737 with these info.

Does anyone know if there is a way around to find the Computed Variables in the dSYM files created with Xcode 12.5b3? I couldn't find any solution and I'm wondering if this is an issue introduced in Xcode 12.5. Any help or tip appreciated!

Steps to Reproduce:

  1. Download the Fruta sample code from Apple Developer Documentation
  2. Note the declaration of the struct RecipeIngredientRow in RecipeView.swift. You should see a Computed Variables ingredient:
struct RecipeIngredientRow: View {
	[...]
    
    var ingredient: Ingredient {
        measuredIngredient.ingredient
    }
  1. Archive the project with Xcode 12.4.
  2. Run dwarfdump Fruta_Xcode12.4.app.dSYM/Contents/Resources/DWARF/Fruta

Result: You see a DW_TAG_subprogram "$s5Fruta19RecipeIngredientRowV10ingredientAA0C0Vvg" that links RecipeIngredientRow with ingredient.get

0x000cccdd:     DW_TAG_structure_type
                  DW_AT_name	("RecipeIngredientRow")
                  DW_AT_linkage_name	("$s5Fruta19RecipeIngredientRowVD")
                  DW_AT_byte_size	(0x00)
                  DW_AT_decl_file	("/Users/timac/Downloads/FrutaBuildingAFeatureRichAppWithSwiftUI/Shared/Recipe/RecipeView.swift")
                  DW_AT_decl_line	(84)
                  DW_AT_APPLE_runtime_class	(DW_LANG_Swift)

[...]

0x000cd012:       DW_TAG_subprogram
                    DW_AT_linkage_name	("$s5Fruta19RecipeIngredientRowV10ingredientAA0C0Vvg")
                    DW_AT_name	("ingredient.get")
                    DW_AT_decl_file	("/Users/timac/Downloads/FrutaBuildingAFeatureRichAppWithSwiftUI/Shared/Recipe/RecipeView.swift")
                    DW_AT_decl_line	(90)
                    DW_AT_type	(0x000cd27b "$s5Fruta10IngredientVD")
                    DW_AT_APPLE_optimized	(true)
                    DW_AT_inline	(DW_INL_inlined)
  1. Archive the project with Xcode 12.5b3.
  2. Run dwarfdump Fruta_Xcode12.5.app.dSYM/Contents/Resources/DWARF/Fruta

Result: The DW_TAG_subprogram $s5Fruta19RecipeIngredientRowV10ingredientAA0C0Vvg that links RecipeIngredientRow with ingredient.get is missing:

0x000ccd64:     DW_TAG_structure_type
                  DW_AT_name	("RecipeIngredientRow")
                  DW_AT_linkage_name	("$s5Fruta19RecipeIngredientRowVD")
                  DW_AT_byte_size	(0x00)
                  DW_AT_APPLE_runtime_class	(DW_LANG_Swift)
Terms of Service

Privacy Policy

Cookie Policy