1/*	$NetBSD: parse_init_declarator.c,v 1.4 2023/03/28 14:44:35 rillig Exp $	*/
2# 3 "parse_init_declarator.c"
3
4/*
5 * Test parsing of init-declarator, which occurs as part of a top-level
6 * declaration.
7 *
8 * See also: GCC, c-parser.cpp, function c_parser_declaration_or_fndef.
9 */
10
11/* lint1-extra-flags: -X 351 */
12
13int global_var;
14
15int *init_declarator_without_initializer
16    __asm("") __attribute__((deprecated));
17
18/* XXX: GCC does not accept this, neither should lint. */
19int *init_declarator_without_initializer_wrong_order
20    __attribute__((deprecated)) __asm("");
21
22int *init_declarator_with_initializer
23    __asm("") __attribute__((deprecated)) = &global_var;
24
25/* XXX: GCC does not accept this, neither should lint. */
26int *init_declarator_with_initializer_wrong_order
27    __attribute__((deprecated)) __asm("") = &global_var;
28
29/* The attributes may only occur before the initializer, not after it. */
30int *init_declarator_with_initializer_attribute_too_late
31    __asm("") = &global_var __attribute__((deprecated));
32/* expect-1: error: syntax error '__attribute__' [249] */
33
34/* cover cgram_declare, freeyyv */
35int original __symbolrename(renamed);
36