// Part of the Carbon Language project, under the Apache License v2.0 with LLVM // Exceptions. See /LICENSE for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // // AUTOUPDATE // RUN: %{carbon-run-semantics} // CHECK:STDOUT: cross_reference_irs_size: 1 // CHECK:STDOUT: calls: [ // CHECK:STDOUT: {arg_ir: block4, arg_refs: block5}, // CHECK:STDOUT: {arg_ir: block7, arg_refs: block8}, // CHECK:STDOUT: ] // CHECK:STDOUT: callables: [ // CHECK:STDOUT: {param_ir: block1, param_refs: block2}, // CHECK:STDOUT: {param_ir: block0, param_refs: block0}, // CHECK:STDOUT: ] // CHECK:STDOUT: integer_literals: [ // CHECK:STDOUT: 1, // CHECK:STDOUT: 2, // CHECK:STDOUT: 1, // CHECK:STDOUT: 2, // CHECK:STDOUT: ] // CHECK:STDOUT: real_literals: [ // CHECK:STDOUT: ] // CHECK:STDOUT: strings: [ // CHECK:STDOUT: a, // CHECK:STDOUT: b, // CHECK:STDOUT: Foo, // CHECK:STDOUT: Main, // CHECK:STDOUT: ] // CHECK:STDOUT: nodes: [ // CHECK:STDOUT: {kind: CrossReference, arg0: ir0, arg1: node0, type: node0}, // CHECK:STDOUT: {kind: CrossReference, arg0: ir0, arg1: node1, type: node1}, // CHECK:STDOUT: {kind: CrossReference, arg0: ir0, arg1: node2, type: node0}, // CHECK:STDOUT: {kind: CrossReference, arg0: ir0, arg1: node3, type: node0}, // CHECK:STDOUT: {kind: CrossReference, arg0: ir0, arg1: node4, type: node0}, // CHECK:STDOUT: {kind: CrossReference, arg0: ir0, arg1: node5, type: node0}, // CHECK:STDOUT: {kind: CrossReference, arg0: ir0, arg1: node6, type: node5}, // CHECK:STDOUT: {kind: VarStorage, type: node2}, // CHECK:STDOUT: {kind: BindName, arg0: str0, arg1: node7, type: node2}, // CHECK:STDOUT: {kind: VarStorage, type: node2}, // CHECK:STDOUT: {kind: BindName, arg0: str1, arg1: node9, type: node2}, // CHECK:STDOUT: {kind: FunctionDeclaration, arg0: str2, arg1: callable0}, // CHECK:STDOUT: {kind: FunctionDefinition, arg0: node11, arg1: block0}, // CHECK:STDOUT: {kind: FunctionDeclaration, arg0: str3, arg1: callable1}, // CHECK:STDOUT: {kind: IntegerLiteral, arg0: int0, type: node2}, // CHECK:STDOUT: {kind: IntegerLiteral, arg0: int1, type: node2}, // CHECK:STDOUT: {kind: Call, arg0: call0, arg1: callable0, type: node6}, // CHECK:STDOUT: {kind: IntegerLiteral, arg0: int2, type: node2}, // CHECK:STDOUT: {kind: IntegerLiteral, arg0: int3, type: node2}, // CHECK:STDOUT: {kind: Call, arg0: call1, arg1: callable0, type: node6}, // CHECK:STDOUT: {kind: FunctionDefinition, arg0: node13, arg1: block6}, // CHECK:STDOUT: ] // CHECK:STDOUT: node_blocks: [ // CHECK:STDOUT: [ // CHECK:STDOUT: ], // CHECK:STDOUT: [ // CHECK:STDOUT: node7, // CHECK:STDOUT: node8, // CHECK:STDOUT: node9, // CHECK:STDOUT: node10, // CHECK:STDOUT: ], // CHECK:STDOUT: [ // CHECK:STDOUT: node8, // CHECK:STDOUT: node10, // CHECK:STDOUT: ], // CHECK:STDOUT: [ // CHECK:STDOUT: node11, // CHECK:STDOUT: node12, // CHECK:STDOUT: node13, // CHECK:STDOUT: node20, // CHECK:STDOUT: ], // CHECK:STDOUT: [ // CHECK:STDOUT: node14, // CHECK:STDOUT: node15, // CHECK:STDOUT: ], // CHECK:STDOUT: [ // CHECK:STDOUT: node14, // CHECK:STDOUT: node15, // CHECK:STDOUT: ], // CHECK:STDOUT: [ // CHECK:STDOUT: node16, // CHECK:STDOUT: node19, // CHECK:STDOUT: ], // CHECK:STDOUT: [ // CHECK:STDOUT: node17, // CHECK:STDOUT: node18, // CHECK:STDOUT: ], // CHECK:STDOUT: [ // CHECK:STDOUT: node17, // CHECK:STDOUT: node18, // CHECK:STDOUT: ], // CHECK:STDOUT: ] fn Foo(a: i32, b: i32,) {} fn Main() { Foo(1, 2); Foo(1, 2,); }