124943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner//===-- main.c --------------------------------------------------*- C++ -*-===// 224943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner// 324943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner// The LLVM Compiler Infrastructure 424943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner// 524943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner// This file is distributed under the University of Illinois Open Source 624943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner// License. See LICENSE.TXT for details. 724943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner// 824943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner//===----------------------------------------------------------------------===// 924943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattnerint main (int argc, char const *argv[]) 1024943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner{ 1124943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner struct point_tag { 1224943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner int x; 1324943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner int y; 14b8183d463ca7b2ba106f000d69cb99a50dbb20f8Sean Callanan char padding[0]; 15dc3f4f60710cfb29b81c8def996ecb8c900b5020Johnny Chen }; // Set break point at this line. 1624943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner 1724943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner struct rect_tag { 1824943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner struct point_tag bottom_left; 1924943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner struct point_tag top_right; 2024943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner }; 21b8183d463ca7b2ba106f000d69cb99a50dbb20f8Sean Callanan struct point_tag pt = { 2, 3, {} }; // This is the first executable statement. 22b8183d463ca7b2ba106f000d69cb99a50dbb20f8Sean Callanan struct rect_tag rect = {{1, 2, {}}, {3, 4, {}}}; 23b912457e1eb6f97d3ee3adc74d1e0f6393e35d3cGreg Clayton return 0; // This is the return statement. 2424943d2ee8bfaa7cf5893e4709143924157a5c1eChris Lattner} 25