10586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian// RUN: %clang_cc1 %s -fsyntax-only -verify -fblocks 20586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian// rdar://10466373 30586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian 40586520acb2f368c874943353a222be7f00c3068Fariborz Jahaniantypedef short SHORT; 50586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian 60586520acb2f368c874943353a222be7f00c3068Fariborz Jahanianvoid f0() { 70586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian (void) ^{ 80586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian if (1) 90586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian return (float)1.0; 100586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian else if (2) 110586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian return (double)2.0; // expected-error {{return type 'double' must match previous return type 'float' when block literal has}} 120586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian else 130586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian return (SHORT)3; // expected-error {{return type 'SHORT' (aka 'short') must match previous return type 'float' when}} 140586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian }; 150586520acb2f368c874943353a222be7f00c3068Fariborz Jahanian} 16