1ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// RUN: %clang_cc1 -fsyntax-only -verify %s 2ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 3ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid *test1(void) { return 0; } 4ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 5ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid test2 (const struct {int a;} *x) { 6ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao x->a = 10; // expected-error {{read-only variable is not assignable}} 7ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao} 8ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 9ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaotypedef int arr[10]; 10ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid test3() { 11ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao const arr b; 12ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao const int b2[10]; 13ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao b[4] = 1; // expected-error {{read-only variable is not assignable}} 14ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao b2[4] = 1; // expected-error {{read-only variable is not assignable}} 15ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao} 16