Protocols composition in Swift

protocol PId {
    var id: Int {get}
}

protocol Priced {
    var price: Double {get}
}

struct Goods: PIdPriced {
    var id: Int
    var price: Double
}

func showIdAndPrice(info: protocol<PIdPriced>) {
    print("id = \(info.id), price = \(info.price)")
}

let bread  = Goods(id: 1, price: 35.5)
showIdAndPrice(bread) //<-Error?