[cfe-dev] Objective-C in `goto` label block.

Hoon Hwangbo drawtree at me.com
Thu Feb 21 19:24:25 PST 2013


Hello.

I am testing `goto` with Objective-C (ARC enabled).
And I discovered Objective-C object cannot be exist under `goto` label.

			{
				AA*	a1;			//	Fine.
			
			LABEL3:
				AA*	a2;			//	Compiler error: "Expected expression".
			}

Anyway it's possible to put Objective-C object in nested block.

			{
			LABEL1:
				{
					AA*	a1	=	[AA new];
				}
			}

This makes me confused.

(1) Why Objective-C objects cannot be placed directly in label?
(2) Why it's possible in nested block?
(3) Is it designed or buggy behavior?

Can I know accurate behavior of `goto` and labels under Objective-C context?



More information about the cfe-dev mailing list