| // |
| // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
| // See https://llvm.org/LICENSE.txt for license information. |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| |
| // |
| // constassign.c |
| // bocktest |
| // |
| // Created by Blaine Garst on 3/21/08. |
| // |
| // shouldn't be able to assign to a const pointer |
| // CONFIG error: assignment of read-only |
| |
| #import <stdio.h> |
| |
| void foo(void) { printf("I'm in foo\n"); } |
| void bar(void) { printf("I'm in bar\n"); } |
| |
| int main(int argc, char *argv[]) { |
| void (*const fptr)(void) = foo; |
| void (^const blockA)(void) = ^ { printf("hello\n"); }; |
| blockA = ^ { printf("world\n"); } ; |
| fptr = bar; |
| printf("%s: success\n", argv[0]); |
| return 0; |
| } |