source: tests/warnings/self-assignment.cfa @ c086c6e

Last change on this file since c086c6e was 2853d6f, checked in by Michael Brooks <mlbrooks@…>, 3 weeks ago

Remove uses of warnings to show test success. Eliminate simple causes of other warnings from affected tests and remove the result from WFLAG_OPT_LAX.

Many affected tests also formerly used -fsyntax-only to avoid errors at later compilation stages, or at runtime. Repair such tests to actually work though runtime, and remove them from SYNTAX_ONLY_CODE.

Group tests listed under WFLAGS_OPT according to why they should receive lax treatment. Add reason WFLGAS_OPT_LAX_EXPECT_WARN and give the original list reason WFLGAS_OPT_LAX_TO_INVESTIGATE.

Tests whose purpose is to show a warning are listed as both SYNTAX_ONLY_CODE (so that the warning is the output) and WFLGAS_OPT_LAX_EXPECT_WARN (to document this fact).

  • Property mode set to 100644
File size: 764 bytes
Line 
1//
2// Cforall Version 1.0.0 Copyright (C) 2018 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
6//
7// self-assignment.c --
8//
9// Author           : Rob Schluntz
10// Created On       : Thu Mar 1 13:53:57 2018
11// Last Modified By : Peter A. Buhr
12// Last Modified On : Sat Jun  5 10:08:56 2021
13// Update Count     : 7
14//
15
16struct S {
17        int i;
18};
19
20struct T {
21        S s;
22};
23
24void f() {
25        int j = 0;
26        S s = { 0 };
27        T t = { { 0 } };
28
29        j = j;
30        s = s;
31        s.i = s.i;
32        t.s.i = t.s.i;
33
34        // Is compiled -fsyntax-only (not run), to make the test's "output" be the warnings from cfa-cpp.
35}
36
37// Local Variables: //
38// tab-width: 4 //
39// compile-command: "cfa self-assignment.cfa" //
40// End: //
Note: See TracBrowser for help on using the repository browser.