in default case, (shouldn't be here) in default case, (shouldn't be here) f: a typedef for pointer to function with parameters signed int with forall T: a type returning signed int swap: a function with parameters left: a instance of type T right: a instance of type T with forall T: a type returning void with body Declaration of temp: a instance of type T Expression Statement: Applying untyped: Name: ?=? to: Name: left Name: right Expression Statement: Applying untyped: Name: ?=? to: Name: right Name: temp context sumable with parameters T: a type with members 0: a const instance of type T ?+?: a function with parameters instance of type T instance of type T returning instance of type T ?++: a function with parameters instance of type T returning instance of type T ?+=?: a function with parameters instance of type T instance of type T returning instance of type T T1: a type with assertions 0: a const instance of type T1 ?+?: a function with parameters instance of type T1 instance of type T1 returning instance of type T1 ?++: a function with parameters instance of type T1 returning instance of type T1 ?+=?: a function with parameters instance of type T1 instance of type T1 returning instance of type T1 T2: a type with parameters P1: a type P2: a type T3: a type with assertions instance of context sumable with parameters instance of type T3 struct __anonymous0 with members i: a instance of type P1 j: a instance of type P2 T2: a type for instance of struct __anonymous0 with parameters P1: a type P2: a type with assertions instance of context sumable with parameters instance of type T2 with parameters instance of type P1 instance of type P2 w1: a instance of type T2 with parameters signed int signed int w2: a typedef for instance of type T2 with parameters signed int signed int g2: a instance of type w2 w3: a type for instance of type T2 with parameters signed int signed int g3: a instance of type w3 sum: a function with parameters n: a signed int a: a open array of instance of type T with forall T: a type with assertions instance of context sumable with parameters instance of type T returning instance of type T with body Declaration of total: a instance of type T Declaration of i: a signed int twice: a function with parameters t: a instance of type T with forall T: a type with assertions 0: a const instance of type T ?+?: a function with parameters instance of type T instance of type T returning instance of type T ?++: a function with parameters instance of type T returning instance of type T ?+=?: a function with parameters instance of type T instance of type T returning instance of type T returning instance of type T with body main: a function returning signed int with body Declaration of x: a signed int Declaration of y: a signed int Declaration of a: a array of Constant Expression: 10signed int Declaration of f: a float Expression Statement: Applying untyped: Name: swap to: Name: x Name: y Expression Statement: Applying untyped: Name: twice to: Name: x Name: y Expression Statement: Applying untyped: Name: ?=? to: Name: f Applying untyped: Name: min to: Constant Expression: 4.0 Constant Expression: 3.0 Expression Statement: Applying untyped: Name: sum to: Constant Expression: 10 Name: a