1041
2227
+ procedure Proc (A : access Child);
2230
Index: gcc/testsuite/gcc.dg/vla-init-1.c
2231
===================================================================
2232
--- a/src/gcc/testsuite/gcc.dg/vla-init-1.c (revision
2233
+++ b/src/gcc/testsuite/gcc.dg/vla-init-1.c (revision
2237
int x[a] = { 1 }; /* { dg-error "variable-sized object may not be initialized" "VLA init" } */
2238
- /* { dg-warning "excess elements in array initializer" "" { target *-*-* } 12 } */
2239
- /* { dg-warning "near initialization" "" { target *-*-* } 12 } */
2240
+ /* { dg-warning "excess elements in array initializer" "excess" { target *-*-* } 12 } */
2241
+ /* { dg-warning "near initialization" "near" { target *-*-* } 12 } */
2243
Index: gcc/testsuite/gcc.dg/pr30551-2.c
2244
===================================================================
2245
--- a/src/gcc/testsuite/gcc.dg/pr30551-2.c (revision
2246
+++ b/src/gcc/testsuite/gcc.dg/pr30551-2.c (revision
2248
/* { dg-do compile } */
2249
/* { dg-options "" } */
2251
-void main(char a) {} /* { dg-bogus "first argument of .main. should be .int." } */
2252
-/* { dg-bogus ".main. takes only zero or two arguments" "" { target *-*-* } 5 } */
2253
-/* { dg-bogus "return type of .main. is not .int." "" { target *-*-* } 5 } */
2254
+void main(char a) {} /* { dg-bogus "first argument of .main. should be .int." "int" } */
2255
+/* { dg-bogus ".main. takes only zero or two arguments" "zero or two" { target *-*-* } 5 } */
2256
+/* { dg-bogus "return type of .main. is not .int." "return type" { target *-*-* } 5 } */
2258
Index: gcc/testsuite/gcc.dg/pr48552-2.c
2259
===================================================================
2260
--- a/src/gcc/testsuite/gcc.dg/pr48552-2.c (revision
2261
+++ b/src/gcc/testsuite/gcc.dg/pr48552-2.c (revision
2266
- __asm ("" : : "r" (*x)); /* { dg-warning "dereferencing" } */
2267
-} /* { dg-error "invalid use of void expression" "" { target *-*-* } 10 } */
2268
+ __asm ("" : : "r" (*x)); /* { dg-warning "dereferencing" "deref" } */
2269
+} /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } 10 } */
2274
- __asm ("" : "=r" (*x)); /* { dg-warning "dereferencing" } */
2275
-} /* { dg-error "invalid use of void expression" "" { target *-*-* } 16 } */
2276
- /* { dg-error "invalid lvalue in asm output 0" "" { target *-*-* } 16 } */
2277
+ __asm ("" : "=r" (*x)); /* { dg-warning "dereferencing" "deref" } */
2278
+} /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } 16 } */
2279
+ /* { dg-error "invalid lvalue in asm output 0" "invalid lvalue" { target *-*-* } 16 } */
2287
- __asm ("" : : "g" (*x)); /* { dg-warning "dereferencing" } */
2288
-} /* { dg-error "invalid use of void expression" "" { target *-*-* } 34 } */
2289
+ __asm ("" : : "g" (*x)); /* { dg-warning "dereferencing" "deref" } */
2290
+} /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } 34 } */
2295
- __asm ("" : "=g" (*x)); /* { dg-warning "dereferencing" } */
2296
-} /* { dg-error "invalid use of void expression" "" { target *-*-* } 40 } */
2297
- /* { dg-error "invalid lvalue in asm output 0" "" { target *-*-* } 40 } */
2298
+ __asm ("" : "=g" (*x)); /* { dg-warning "dereferencing" "deref" } */
2299
+} /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } 40 } */
2300
+ /* { dg-error "invalid lvalue in asm output 0" "invalid lvalue" { target *-*-* } 40 } */
2308
- __asm ("" : "=r" (*x)); /* { dg-error "dereferencing pointer to incomplete type" } */
2309
-} /* { dg-error "invalid lvalue in asm output 0" "" { target *-*-* } 52 } */
2310
+ __asm ("" : "=r" (*x)); /* { dg-error "dereferencing pointer to incomplete type" "incomplete" } */
2311
+} /* { dg-error "invalid lvalue in asm output 0" "invalid lvalue" { target *-*-* } 52 } */
2312
Index: gcc/testsuite/gcc.dg/parser-pr28152.c
2313
===================================================================
2314
--- a/src/gcc/testsuite/gcc.dg/parser-pr28152.c (revision
2315
+++ b/src/gcc/testsuite/gcc.dg/parser-pr28152.c (revision
2319
z = _Complex (1.90000007326203904e+19, 0.0); /* { dg-error "_Complex" } */
2320
- z = _Complex (1.0e+0, 0.0) / z; /* { dg-error "_Complex" } */
2321
- /* { dg-error "at end of input" "" { target *-*-* } 10 } */
2322
+ z = _Complex (1.0e+0, 0.0) / z; /* { dg-error "_Complex" "_Complex" } */
2323
+ /* { dg-error "at end of input" "end of input" { target *-*-* } 10 } */
2324
Index: gcc/testsuite/gcc.dg/pr30551-6.c
2325
===================================================================
2326
--- a/src/gcc/testsuite/gcc.dg/pr30551-6.c (revision
2327
+++ b/src/gcc/testsuite/gcc.dg/pr30551-6.c (revision
2329
/* { dg-do compile } */
2330
/* { dg-options "-pedantic" } */
2331
/* { dg-skip-if "-Wmain not enabled with -pedantic on SPU" { spu-*-* } } */
2332
-void main(char a) {} /* { dg-warning "first argument of .main. should be .int." } */
2333
-/* { dg-warning ".main. takes only zero or two arguments" "" { target *-*-* } 5 } */
2334
-/* { dg-warning "return type of .main. is not .int." "" { target *-*-* } 5 } */
2335
+void main(char a) {} /* { dg-warning "first argument of .main. should be .int." "int" } */
2336
+/* { dg-warning ".main. takes only zero or two arguments" "zero or two" { target *-*-* } 5 } */
2337
+/* { dg-warning "return type of .main. is not .int." "return type" { target *-*-* } 5 } */
2338
Index: gcc/testsuite/gcc.dg/c99-vla-jump-4.c
2339
===================================================================
2340
--- a/src/gcc/testsuite/gcc.dg/c99-vla-jump-4.c (revision
2341
+++ b/src/gcc/testsuite/gcc.dg/c99-vla-jump-4.c (revision
2343
void fd288 (int n) { P0A:goto P0A;{ typedef int (*b)[n]; P01A:goto P01A;{ typedef int (*c)[n]; P012A:goto P012A;0;} P01B:goto P01B;{ typedef int (*d)[n]; P013A:goto P013A;0;} P01C:goto P01C;; typedef int (*e)[n]; P014A:goto P014A;0;}; P0B:goto P0B;{ typedef int (*f)[n]; P02A:goto P02A;{ typedef int (*g)[n]; P024A:goto P024A;0;}; P02B:goto P02B;{ typedef int (*h)[n]; P025A:goto P025A;0;}; P02C:goto P02C;; typedef int (*i)[n]; P026A:goto P026A;0;}; P0C:goto P0C;; typedef int (*j)[n]; P03A:goto P03A;0;a: goto a; P03B:goto P03B; }
2345
/* Match extra informative notes. */
2346
-/* { dg-message "note: label '\[^\n'\]*' defined here" "note: expected" { target *-*-* } 0 } */
2347
-/* { dg-message "note: '\[^\n'\]*' declared here" "note: expected" { target *-*-* } 0 } */
2348
+/* { dg-message "note: label '\[^\n'\]*' defined here" "note: defined" { target *-*-* } 0 } */
2349
+/* { dg-message "note: '\[^\n'\]*' declared here" "note: declared" { target *-*-* } 0 } */
2350
Index: gcc/testsuite/gcc.dg/decl-9.c
2351
===================================================================
2352
--- a/src/gcc/testsuite/gcc.dg/decl-9.c (revision
2353
+++ b/src/gcc/testsuite/gcc.dg/decl-9.c (revision
2356
b: a: ; /* { dg-bogus "a label can only be part of a statement" } */
2357
c: d e; /* { dg-error "a label can only be part of a statement" } */
2358
-/* { dg-error "unknown type name 'd'" "" { target *-*-* } 23 } */
2359
+/* { dg-error "unknown type name 'd'" "unknown type name" { target *-*-* } 23 } */
2363
Index: gcc/testsuite/gcc.dg/Wstrict-aliasing-converted-assigned.c
2364
===================================================================
2365
--- a/src/gcc/testsuite/gcc.dg/Wstrict-aliasing-converted-assigned.c (revision
2366
+++ b/src/gcc/testsuite/gcc.dg/Wstrict-aliasing-converted-assigned.c (revision
2371
- *(long*)&i = 0; /* { dg-warning "type-punn" } */
2372
+ *(long*)&i = 0; /* { dg-warning "type-punn" "type-punn" } */
2376
-/* { dg-message "does break strict-aliasing" "" { target { *-*-* && lp64 } xfail *-*-* } 8 } */
2377
-/* { dg-message "initialized" "" { target { *-*-* && lp64 } xfail *-*-* } 8 } */
2378
+/* These messages are only expected for lp64, but fail there. When they
2379
+ pass for lp64, replace "xfail *-*-*" with "target lp64". */
2381
+/* { dg-message "does break strict-aliasing" "break" { xfail *-*-* } 8 } */
2382
+/* { dg-message "initialized" "init" { xfail *-*-* } 8 } */
2383
Index: gcc/testsuite/gcc.dg/declspec-10.c
2384
===================================================================
2385
--- a/src/gcc/testsuite/gcc.dg/declspec-10.c (revision
2386
+++ b/src/gcc/testsuite/gcc.dg/declspec-10.c (revision
2389
inline int main (void) { return 0; } /* { dg-warning "cannot inline function 'main'" } */
2391
-/* { dg-message "error: register name not specified for 'y'" "" { target *-*-* } 19 } */
2392
+/* { dg-message "error: register name not specified for 'y'" "not specified" { target *-*-* } 19 } */
2393
Index: gcc/testsuite/gcc.dg/Wobjsize-1.c
2394
===================================================================
2395
--- a/src/gcc/testsuite/gcc.dg/Wobjsize-1.c (revision
2396
+++ b/src/gcc/testsuite/gcc.dg/Wobjsize-1.c (revision
2400
/* { dg-warning "will always overflow destination buffer" "" { target *-*-* } 6 } */
2401
-/* { dg-message "file included" "" { target *-*-* } 0 } */
2402
-/* { dg-message "inlined from" "" { target *-*-* } 0 } */
2403
+/* { dg-message "file included" "included" { target *-*-* } 0 } */
2404
+/* { dg-message "inlined from" "inlined" { target *-*-* } 0 } */
2405
Index: gcc/testsuite/gcc.dg/cpp/include2a.c
2406
===================================================================
2407
--- a/src/gcc/testsuite/gcc.dg/cpp/include2a.c (revision
2408
+++ b/src/gcc/testsuite/gcc.dg/cpp/include2a.c (revision
2411
/* These error is No such file or directory, just once. However, this
2412
message is locale-dependent, so don't test for it. */
2413
-/* { dg-error "silly" "" { target *-*-* } 0 } */
2414
-/* { dg-error "missing" "" { target *-*-* } 0 } */
2415
-/* { dg-message "terminated" "" { target *-*-* } 0 } */
2416
+/* { dg-error "silly" "silly" { target *-*-* } 0 } */
2417
+/* { dg-error "missing" "missing" { target *-*-* } 0 } */
2418
+/* { dg-message "terminated" "terminated" { target *-*-* } 0 } */
2419
Index: gcc/testsuite/gcc.dg/cpp/pr30786.c
2420
===================================================================
2421
--- a/src/gcc/testsuite/gcc.dg/cpp/pr30786.c (revision
2422
+++ b/src/gcc/testsuite/gcc.dg/cpp/pr30786.c (revision
2424
/* PR preprocessor/30786 - _Pragma at end of file should not ICE */
2425
/* { dg-do compile } */
2427
-/* { dg-error "parenthesized" "" { target *-*-* } 9 } */
2428
-/* { dg-error "expected" "" { target *-*-* } 9 } */
2429
+/* { dg-error "parenthesized" "parenthesized" { target *-*-* } 9 } */
2430
+/* { dg-error "expected" "expected" { target *-*-* } 9 } */
2434
Index: gcc/testsuite/gcc.dg/cpp/pr28709.c
2435
===================================================================
2436
--- a/src/gcc/testsuite/gcc.dg/cpp/pr28709.c (revision
2437
+++ b/src/gcc/testsuite/gcc.dg/cpp/pr28709.c (revision
2439
/* { dg-do compile } */
2442
-/* { dg-error "expected identifier.*'-'" "" { target *-*-* } 6 } */
2443
-/* { dg-error pasting "" { target *-*-* } 6 } */
2444
+/* { dg-error "expected identifier.*'-'" "expected" { target *-*-* } 6 } */
2445
+/* { dg-error pasting "pasting" { target *-*-* } 6 } */
2446
Index: gcc/testsuite/gcc.dg/cpp/missing-header-MD.c
2447
===================================================================
2448
--- a/src/gcc/testsuite/gcc.dg/cpp/missing-header-MD.c (revision
2449
+++ b/src/gcc/testsuite/gcc.dg/cpp/missing-header-MD.c (revision
2451
/* { dg-options "-MD" } */
2453
#include "nonexistent.h"
2454
-/* { dg-message "nonexistent.h" "" { target *-*-* } 0 } */
2455
-/* { dg-message "terminated" "" { target *-*-* } 0 } */
2456
+/* { dg-message "nonexistent.h" "nonexistent.h" { target *-*-* } 0 } */
2457
+/* { dg-message "terminated" "terminated" { target *-*-* } 0 } */
2459
/* This declaration should not receive any diagnostic. */
2461
Index: gcc/testsuite/gcc.dg/cpp/macspace2.c
2462
===================================================================
2463
--- a/src/gcc/testsuite/gcc.dg/cpp/macspace2.c (revision
2464
+++ b/src/gcc/testsuite/gcc.dg/cpp/macspace2.c (revision
2466
#define ag"abc" /* { dg-error "requires whitespace" } */
2469
-/* { dg-error "missing terminating" "" { target *-*-* } 6 } */
2470
-/* { dg-error "missing terminating" "" { target *-*-* } 10 } */
2471
+/* { dg-error "missing terminating" "missing-terminating" { target *-*-* } 6 } */
2472
+/* { dg-error "missing terminating" "missing-terminating" { target *-*-* } 10 } */
2473
Index: gcc/testsuite/gcc.dg/cpp/missing-header-1.c
2474
===================================================================
2475
--- a/src/gcc/testsuite/gcc.dg/cpp/missing-header-1.c (revision
2476
+++ b/src/gcc/testsuite/gcc.dg/cpp/missing-header-1.c (revision
2478
/* { dg-options "" } */
2480
#include "nonexistent.h"
2481
-/* { dg-message "nonexistent.h" "" { target *-*-* } 0 } */
2482
-/* { dg-message "terminated" "" { target *-*-* } 0 } */
2483
+/* { dg-message "nonexistent.h" "nonexistent.h" { target *-*-* } 0 } */
2484
+/* { dg-message "terminated" "terminated" { target *-*-* } 0 } */
2486
/* This declaration should not receive any diagnostic. */
2488
Index: gcc/testsuite/gcc.dg/cpp/missing-header-MMD.c
2489
===================================================================
2490
--- a/src/gcc/testsuite/gcc.dg/cpp/missing-header-MMD.c (revision
2491
+++ b/src/gcc/testsuite/gcc.dg/cpp/missing-header-MMD.c (revision
2493
/* { dg-options "-MMD" } */
2495
#include "nonexistent.h"
2496
-/* { dg-message "nonexistent.h" "" { target *-*-* } 0 } */
2497
-/* { dg-message "terminated" "" { target *-*-* } 0 } */
2498
+/* { dg-message "nonexistent.h" "nonexistent.h" { target *-*-* } 0 } */
2499
+/* { dg-message "terminated" "terminated" { target *-*-* } 0 } */
2501
/* This declaration should not receive any diagnostic. */
2503
Index: gcc/testsuite/gcc.dg/cpp/missing-sysheader-MD.c
2504
===================================================================
2505
--- a/src/gcc/testsuite/gcc.dg/cpp/missing-sysheader-MD.c (revision
2506
+++ b/src/gcc/testsuite/gcc.dg/cpp/missing-sysheader-MD.c (revision
2508
/* { dg-options "-MD" } */
2510
#include <nonexistent.h>
2511
-/* { dg-message "nonexistent.h" "" { target *-*-* } 0 } */
2512
-/* { dg-message "terminated" "" { target *-*-* } 0 } */
2513
+/* { dg-message "nonexistent.h" "nonexistent.h" { target *-*-* } 0 } */
2514
+/* { dg-message "terminated" "terminated" { target *-*-* } 0 } */
2516
/* This declaration should not receive any diagnostic. */
2518
Index: gcc/testsuite/gcc.dg/cpp/missing-sysheader-MMD.c
2519
===================================================================
2520
--- a/src/gcc/testsuite/gcc.dg/cpp/missing-sysheader-MMD.c (revision
2521
+++ b/src/gcc/testsuite/gcc.dg/cpp/missing-sysheader-MMD.c (revision
2523
/* { dg-options "-MMD" } */
2525
#include <nonexistent.h>
2526
-/* { dg-message "nonexistent.h" "" { target *-*-* } 0 } */
2527
-/* { dg-message "terminated" "" { target *-*-* } 0 } */
2528
+/* { dg-message "nonexistent.h" "nonexistent.h" { target *-*-* } 0 } */
2529
+/* { dg-message "terminated" "terminated" { target *-*-* } 0 } */
2531
/* This declaration should not receive any diagnostic. */
2533
Index: gcc/testsuite/gcc.dg/20031223-1.c
2534
===================================================================
2535
--- a/src/gcc/testsuite/gcc.dg/20031223-1.c (revision
2536
+++ b/src/gcc/testsuite/gcc.dg/20031223-1.c (revision
2541
- l: int; /* { dg-error "a label can only be part of a statement and a declaration is not a statement" } */
2542
- /* { dg-warning "useless type name in empty declaration" "" { target *-*-* } 10 } */
2543
- /* { dg-error "label at end of compound statement" "" { target *-*-* } 10 } */
2544
+ l: int; /* { dg-error "a label can only be part of a statement and a declaration is not a statement" "not stmt" } */
2545
+ /* { dg-warning "useless type name in empty declaration" "type name" { target *-*-* } 10 } */
2546
+ /* { dg-error "label at end of compound statement" "label" { target *-*-* } 10 } */
2548
Index: gcc/testsuite/gcc.dg/matrix/matrix.exp
2549
===================================================================
2550
--- a/src/gcc/testsuite/gcc.dg/matrix/matrix.exp (revision
2551
+++ b/src/gcc/testsuite/gcc.dg/matrix/matrix.exp (revision
2556
-# Override the list defined in profopt.exp.
2557
-set PROFOPT_OPTIONS [list {}]
2559
if $tracelevel then {
2563
# Load support procs.
2564
load_lib profopt.exp
2566
+# Save and override the default list defined in profopt.exp.
2567
+set matrix_save_profopt_options $PROFOPT_OPTIONS
2568
+set PROFOPT_OPTIONS [list {}]
2570
# These are globals used by profopt-execute. The first is options
2571
# needed to generate profile data, the second is options to use the
2574
profopt-execute $src
2577
+set PROFOPT_OPTIONS $matrix_save_profopt_options
2578
Index: gcc/testsuite/gcc.dg/utf-dflt2.c
2579
===================================================================
2580
--- a/src/gcc/testsuite/gcc.dg/utf-dflt2.c (revision
2581
+++ b/src/gcc/testsuite/gcc.dg/utf-dflt2.c (revision
2583
/* { dg-do compile } */
2584
/* { dg-options "" } */
2586
-const void *s0 = u8"a"; /* { dg-error "undeclared" } */
2587
- /* { dg-error "expected ',' or ';'" "" { target *-*-* } 5 } */
2588
+const void *s0 = u8"a"; /* { dg-error "undeclared" "undeclared" } */
2589
+ /* { dg-error "expected ',' or ';'" "expected" { target *-*-* } 5 } */
2593
Index: gcc/testsuite/gcc.dg/pr30551-3.c
2594
===================================================================
2595
--- a/src/gcc/testsuite/gcc.dg/pr30551-3.c (revision
2596
+++ b/src/gcc/testsuite/gcc.dg/pr30551-3.c (revision
2598
/* { dg-do compile } */
2599
/* { dg-options "-pedantic-errors" } */
2600
/* { dg-skip-if "-Wmain not enabled with -pedantic on SPU" { spu-*-* } } */
2601
-void main(char a) {} /* { dg-error "first argument of .main. should be .int." } */
2602
-/* { dg-error ".main. takes only zero or two arguments" "" { target *-*-* } 5 } */
2603
-/* { dg-error "return type of .main. is not .int." "" { target *-*-* } 5 } */
2604
+void main(char a) {} /* { dg-error "first argument of .main. should be .int." "int" } */
2605
+/* { dg-error ".main. takes only zero or two arguments" "zero or two" { target *-*-* } 5 } */
2606
+/* { dg-error "return type of .main. is not .int." "return type" { target *-*-* } 5 } */
2607
Index: gcc/testsuite/gcc.dg/Wconversion-integer.c
2608
===================================================================
2609
--- a/src/gcc/testsuite/gcc.dg/Wconversion-integer.c (revision
2610
+++ b/src/gcc/testsuite/gcc.dg/Wconversion-integer.c (revision
2615
- uc = x ? 1U : -1; /* { dg-warning " conversion" } */
2616
- /* { dg-warning "negative integer implicitly converted to unsigned type" "" { target *-*-* } 43 } */
2617
- uc = x ? SCHAR_MIN : 1U; /* { dg-warning " conversion" } */
2618
- /* { dg-warning "negative integer implicitly converted to unsigned type" "" { target *-*-* } 45 } */
2619
+ uc = x ? 1U : -1; /* { dg-warning " conversion" "conversion" } */
2620
+ /* { dg-warning "negative integer implicitly converted to unsigned type" "implicit" { target *-*-* } 43 } */
2621
+ uc = x ? SCHAR_MIN : 1U; /* { dg-warning " conversion" "conversion" } */
2622
+ /* { dg-warning "negative integer implicitly converted to unsigned type" "implicit" { target *-*-* } 45 } */
2623
uc = x ? 1 : -1; /* { dg-warning "negative integer implicitly converted to unsigned type" } */
2624
uc = x ? SCHAR_MIN : 1; /* { dg-warning "negative integer implicitly converted to unsigned type" } */
2625
ui = x ? 1U : -1; /* { dg-warning "negative integer implicitly converted to unsigned type" } */
2626
Index: gcc/testsuite/gcc.dg/c99-vla-jump-1.c
2627
===================================================================
2628
--- a/src/gcc/testsuite/gcc.dg/c99-vla-jump-1.c (revision
2629
+++ b/src/gcc/testsuite/gcc.dg/c99-vla-jump-1.c (revision
2631
void fa288 (int n) { { int b[n]; { int c[n]; 0;} { int d[n]; 0;} ; int e[n]; 0;}; { int f[n]; { int g[n]; 0;}; { int h[n]; 0;}; ; int i[n]; 0;}; ; int j[n]; 0;a: goto a; }
2633
/* Match extra informative notes. */
2634
-/* { dg-message "note: label '\[^\n'\]*' defined here" "note: expected" { target *-*-* } 0 } */
2635
-/* { dg-message "note: '\[^\n'\]*' declared here" "note: expected" { target *-*-* } 0 } */
2636
+/* { dg-message "note: label '\[^\n'\]*' defined here" "note: defined" { target *-*-* } 0 } */
2637
+/* { dg-message "note: '\[^\n'\]*' declared here" "note: declared" { target *-*-* } 0 } */
2638
Index: gcc/testsuite/gcc.dg/declspec-18.c
2639
===================================================================
2640
--- a/src/gcc/testsuite/gcc.dg/declspec-18.c (revision
2641
+++ b/src/gcc/testsuite/gcc.dg/declspec-18.c (revision
2644
int z; /* { dg-message "previous declaration of 'z'" } */
2645
typedef t2 *z; /* { dg-error "unknown type name 't2'" } */
2646
-/* { dg-error "'z' redeclared " "" { target *-*-* } 7 } */
2647
+/* { dg-error "'z' redeclared " "redeclared" { target *-*-* } 7 } */
2649
extern t3 p1(void); /* { dg-error "unknown type name 't3'" } */
2650
int p2(const t4 x); /* { dg-error "unknown type name 't4'" } */
2655
-typeof (x1) c2; /* { dg-error "undeclared" } */
2656
+typeof (x1) c2; /* { dg-error "undeclared" "undeclared" } */
2657
typeof (const t11) c3; /* { dg-error "unknown type name 't11'" } */
2658
-typeof (t12 *) c3; /* { dg-error "unknown type name 't12'" "" { xfail *-*-* } } */
2659
-/* { dg-bogus "unknown type name 'x1'" "" { target *-*-* } 26 } */
2660
-/* { dg-bogus "undeclared" "" { xfail *-*-* } 28 } */
2661
-/* { dg-bogus "expected expression before" "" { xfail *-*-* } 28 } */
2662
+typeof (t12 *) c3; /* { dg-error "unknown type name 't12'" "t12" { xfail *-*-* } } */
2663
+/* { dg-bogus "unknown type name 'x1'" unknown"" { target *-*-* } 26 } */
2664
+/* { dg-bogus "undeclared" "undeclared" { xfail *-*-* } 28 } */
2665
+/* { dg-bogus "expected expression before" "expected" { xfail *-*-* } 28 } */
2669
int s0 = sizeof (z);
2670
-int s1 = sizeof (x2); /* { dg-error "undeclared" } */
2671
+int s1 = sizeof (x2); /* { dg-error "undeclared" "undeclared" } */
2672
int s2 = sizeof (const t13); /* { dg-error "unknown type name 't13'" } */
2673
-int s3 = sizeof (t14 *); /* { dg-error "unknown type name 't14'" "" { xfail *-*-* } } */
2674
+int s3 = sizeof (t14 *); /* { dg-error "unknown type name 't14'" "t14" { xfail *-*-* } } */
2678
-/* { dg-bogus "unknown type name 'x2'" "" { target *-*-* } 36 } */
2679
-/* { dg-bogus "undeclared" "" { xfail *-*-* } 38 } */
2680
-/* { dg-bogus "expected expression before" "" { xfail *-*-* } 38 } */
2681
+/* { dg-bogus "unknown type name 'x2'" "unknown" { target *-*-* } 36 } */
2682
+/* { dg-bogus "undeclared" "undeclared" { xfail *-*-* } 38 } */
2683
+/* { dg-bogus "expected expression before" "expected" { xfail *-*-* } 38 } */
2685
int a0 = __alignof__ (z);
2686
int a1 = __alignof__ (x3); /* { dg-error "undeclared" } */
2687
int a2 = __alignof__ (const t15); /* { dg-error "unknown type name 't15'" } */
2688
-int a3 = __alignof__ (t16 *); /* { dg-error "unknown type name 't16'" "" { xfail *-*-* } } */
2689
+int a3 = __alignof__ (t16 *); /* { dg-error "unknown type name 't16'" "t16" { xfail *-*-* } } */
2693
/* { dg-bogus "unknown type name 'x3'" "" { target *-*-* } 47 } */
2694
-/* { dg-bogus "undeclared" "" { xfail *-*-* } 49 } */
2695
-/* { dg-bogus "expected expression before" "" { xfail *-*-* } 49 } */
2696
+/* { dg-bogus "undeclared" "undeclared" { xfail *-*-* } 49 } */
2697
+/* { dg-bogus "expected expression before" "expected" { xfail *-*-* } 49 } */
2700
/* Cannot detect (undefd_type *) or (undefd_type (*) because it would
2705
- return (const t17) "abc"; /* { dg-error "unknown type name 't17'" } */
2706
-/* { dg-bogus "expected" "" { target *-*-* } 63 } */
2707
+ return (const t17) "abc"; /* { dg-error "unknown type name 't17'" "t17" } */
2708
+/* { dg-bogus "expected" "expected" { target *-*-* } 63 } */
2713
- return (const t18 *) "abc"; /* { dg-error "unknown type name 't18'" } */
2714
-/* { dg-bogus "expected" "" { target *-*-* } 69 } */
2715
+ return (const t18 *) "abc"; /* { dg-error "unknown type name 't18'" "t18" } */
2716
+/* { dg-bogus "expected" "expected" { target *-*-* } 69 } */
2724
- return (void *) ((void *(*)(t19)) f3); /* { dg-error "unknown type name 't19'" } */
2725
-/* { dg-bogus "expected" "" { xfail *-*-* } 79 } */
2726
+ return (void *) ((void *(*)(t19)) f3); /* { dg-error "unknown type name 't19'" "t19" } */
2727
+/* { dg-bogus "expected" "expected" { xfail *-*-* } 79 } */
2732
return &((const t20){1}); /* { dg-error "unknown type name 't20'" } */
2733
-/* { dg-bogus "return discards 'const'" "" { target *-*-* } 85 } */
2734
-/* { dg-bogus "expected" "" { target *-*-* } 85 } */
2735
+/* { dg-bogus "return discards 'const'" "discards" { target *-*-* } 85 } */
2736
+/* { dg-bogus "expected" "expected" { target *-*-* } 85 } */
2739
int f5(__builtin_va_list ap)
2744
- return __builtin_offsetof (t23, field); /* { dg-error "unknown type name 't23'" } */
2745
-/* { dg-bogus "request for member" "" { target *-*-* } 98 } */
2746
+ return __builtin_offsetof (t23, field); /* { dg-error "unknown type name 't23'" "t23" } */
2747
+/* { dg-bogus "request for member" "request" { target *-*-* } 98 } */
2749
Index: gcc/testsuite/gcc.dg/c99-vla-jump-5.c
2750
===================================================================
2751
--- a/src/gcc/testsuite/gcc.dg/c99-vla-jump-5.c (revision
2752
+++ b/src/gcc/testsuite/gcc.dg/c99-vla-jump-5.c (revision
2756
/* Match extra informative notes. */
2757
-/* { dg-message "note: switch starts here" "note: expected" { target *-*-* } 0 } */
2758
-/* { dg-message "note: '\[^\n'\]*' declared here" "note: expected" { target *-*-* } 0 } */
2759
+/* { dg-message "note: switch starts here" "note: starts" { target *-*-* } 0 } */
2760
+/* { dg-message "note: '\[^\n'\]*' declared here" "note: declared" { target *-*-* } 0 } */
2761
Index: gcc/testsuite/gcc.dg/redecl-1.c
2762
===================================================================
2763
--- a/src/gcc/testsuite/gcc.dg/redecl-1.c (revision
2764
+++ b/src/gcc/testsuite/gcc.dg/redecl-1.c (revision
2769
- bar4(); /* { dg-warning "implicit declaration of function" } */
2770
+ bar4(); /* { dg-warning "implicit declaration of function" "implicit" } */
2775
extern double bar4(double); /* { dg-error "conflict" } */
2776
-/* { dg-message "note: previous implicit declaration" "" { target *-*-* } 55 } */
2777
+/* { dg-message "note: previous implicit declaration" "previous" { target *-*-* } 55 } */
2780
/* Implicit decl, clashing with extern at previous function scope. */
2784
- extern double bar5(double); /* { dg-message "note: previous declaration" "" } */
2785
-} /* { dg-message "note: previous implicit declaration" "" { target *-*-* } 68 } */
2786
+ extern double bar5(double); /* { dg-message "note: previous declaration" "previous 1" } */
2787
+} /* { dg-message "note: previous implicit declaration" "previous 2" { target *-*-* } 68 } */
2791
Index: gcc/testsuite/gcc.dg/di-longlong64-sync-1.c
2792
===================================================================
2793
--- a/src/gcc/testsuite/gcc.dg/di-longlong64-sync-1.c (revision
2794
+++ b/src/gcc/testsuite/gcc.dg/di-longlong64-sync-1.c (revision
2796
/* { dg-options "-std=gnu99" } */
2797
/* { dg-additional-options "-march=pentium" { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
2799
-/* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */
2800
-/* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */
2801
+/* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "fetch_and_nand" { target *-*-* } 0 } */
2802
+/* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" "nand_and_fetch" { target *-*-* } 0 } */
2805
/* Test basic functionality of the intrinsics. The operations should
2806
Index: gcc/testsuite/gcc.dg/noncompile/pr44517.c
2807
===================================================================
2808
--- a/src/gcc/testsuite/gcc.dg/noncompile/pr44517.c (revision
2809
+++ b/src/gcc/testsuite/gcc.dg/noncompile/pr44517.c (revision
2811
/* PR c/44517: Improve diagnostic for misspelled typename in function declaration. */
2812
int f1(int x, pid_t y, long z, in t) {
2813
-/* { dg-error "unknown type name 'pid_t'" "" { target *-*-* } 2 } */
2814
-/* { dg-error "unknown type name 'in'" "" { target *-*-* } 2 } */
2815
+/* { dg-error "unknown type name 'pid_t'" "pid_t" { target *-*-* } 2 } */
2816
+/* { dg-error "unknown type name 'in'" "in" { target *-*-* } 2 } */
2817
return x + y + z + t;
2820
Index: gcc/testsuite/gcc.dg/noncompile/pr52290.c
2821
===================================================================
2822
--- a/src/gcc/testsuite/gcc.dg/noncompile/pr52290.c (revision
2823
+++ b/src/gcc/testsuite/gcc.dg/noncompile/pr52290.c (revision
2825
-/* { dg-error "undeclared here" "" { target *-*-* } 3 } */
2826
-/* { dg-error "expected" "" { target *-*-* } 3 } */
2827
+/* { dg-error "undeclared here" "undeclared" { target *-*-* } 3 } */
2828
+/* { dg-error "expected" "expected" { target *-*-* } 3 } */
2830
Index: gcc/testsuite/gcc.dg/utf-dflt.c
2831
===================================================================
2832
--- a/src/gcc/testsuite/gcc.dg/utf-dflt.c (revision
2833
+++ b/src/gcc/testsuite/gcc.dg/utf-dflt.c (revision
2835
/* { dg-do compile } */
2836
/* { dg-options "" } */
2838
-const unsigned short c0 = u'a'; /* { dg-error "undeclared" } */
2839
- /* { dg-error "expected ',' or ';'" "" { target *-*-* } 6 } */
2840
-const unsigned long c1 = U'a'; /* { dg-error "undeclared" } */
2841
- /* { dg-error "expected ',' or ';'" "" { target *-*-* } 8 } */
2842
+const unsigned short c0 = u'a'; /* { dg-error "undeclared" "undeclared" } */
2843
+ /* { dg-error "expected ',' or ';'" "expected" { target *-*-* } 6 } */
2844
+const unsigned long c1 = U'a'; /* { dg-error "undeclared" "undeclared" } */
2845
+ /* { dg-error "expected ',' or ';'" "expected" { target *-*-* } 8 } */
2849
Index: gcc/testsuite/gcc.dg/pr27953.c
2850
===================================================================
2851
--- a/src/gcc/testsuite/gcc.dg/pr27953.c (revision
2852
+++ b/src/gcc/testsuite/gcc.dg/pr27953.c (revision
2856
-void foo(struct A a) {} /* { dg-warning "declared inside parameter list" } */
2857
-/* { dg-warning "its scope is only" "" { target *-*-* } 3 } */
2858
-/* { dg-error "incomplete type" "" { target *-*-* } 3 } */
2859
+void foo(struct A a) {} /* { dg-warning "declared inside parameter list" "inside" } */
2860
+/* { dg-warning "its scope is only" "scope" { target *-*-* } 3 } */
2861
+/* { dg-error "incomplete type" "incomplete" { target *-*-* } 3 } */
2863
-void foo() {} /* { dg-error "redefinition" } */
2864
-/* { dg-message "note: previous definition" "" { target *-*-* } 3 } */
2865
+void foo() {} /* { dg-error "redefinition" "redef" } */
2866
+/* { dg-message "note: previous definition" "previous" { target *-*-* } 3 } */
2867
Index: gcc/testsuite/gcc.dg/pr30551-4.c
2868
===================================================================
2869
--- a/src/gcc/testsuite/gcc.dg/pr30551-4.c (revision
2870
+++ b/src/gcc/testsuite/gcc.dg/pr30551-4.c (revision
2872
/* { dg-do compile } */
2873
/* { dg-options "-pedantic-errors -Wno-main" } */
2875
-void main(char a) {} /* { dg-bogus "first argument of .main. should be .int." } */
2876
-/* { dg-bogus ".main. takes only zero or two arguments" "" { target *-*-* } 5 } */
2877
-/* { dg-bogus "return type of .main. is not .int." "" { target *-*-* } 5 } */
2878
+void main(char a) {} /* { dg-bogus "first argument of .main. should be .int." "int" } */
2879
+/* { dg-bogus ".main. takes only zero or two arguments" "zero or two" { target *-*-* } 5 } */
2880
+/* { dg-bogus "return type of .main. is not .int." "return type" { target *-*-* } 5 } */
2882
Index: gcc/testsuite/gcc.dg/pr14475.c
2883
===================================================================
2884
--- a/src/gcc/testsuite/gcc.dg/pr14475.c (revision
2885
+++ b/src/gcc/testsuite/gcc.dg/pr14475.c (revision
2890
- enum tree_code code : 8; /* { dg-error "ISO C forbids forward references to" "" } */
2891
- /* { dg-error "type of bit-field .code. is a GCC extension" "" { target *-*-* } 6 } */
2892
- /* { dg-warning "narrower than values of its type" "" { target *-*-* } 6 } */
2893
- /* { dg-error "incomplete type" "" { target *-*-* } 6 } */
2894
+ enum tree_code code : 8; /* { dg-error "ISO C forbids forward references to" "forward ref" } */
2895
+ /* { dg-error "type of bit-field .code. is a GCC extension" "extension" { target *-*-* } 6 } */
2896
+ /* { dg-warning "narrower than values of its type" "narrower" { target *-*-* } 6 } */
2897
+ /* { dg-error "incomplete type" "incomplete" { target *-*-* } 6 } */
2899
Index: gcc/testsuite/gcc.dg/c99-vla-jump-2.c
2900
===================================================================
2901
--- a/src/gcc/testsuite/gcc.dg/c99-vla-jump-2.c (revision
2902
+++ b/src/gcc/testsuite/gcc.dg/c99-vla-jump-2.c (revision
2904
void fb288 (int n) { P0A:goto P0A;{ int b[n]; P01A:goto P01A;{ int c[n]; P012A:goto P012A;0;} P01B:goto P01B;{ int d[n]; P013A:goto P013A;0;} P01C:goto P01C;; int e[n]; P014A:goto P014A;0;}; P0B:goto P0B;{ int f[n]; P02A:goto P02A;{ int g[n]; P024A:goto P024A;0;}; P02B:goto P02B;{ int h[n]; P025A:goto P025A;0;}; P02C:goto P02C;; int i[n]; P026A:goto P026A;0;}; P0C:goto P0C;; int j[n]; P03A:goto P03A;0;a: goto a; P03B:goto P03B; }
2906
/* Match extra informative notes. */
2907
-/* { dg-message "note: label '\[^\n'\]*' defined here" "note: expected" { target *-*-* } 0 } */
2908
-/* { dg-message "note: '\[^\n'\]*' declared here" "note: expected" { target *-*-* } 0 } */
2909
+/* { dg-message "note: label '\[^\n'\]*' defined here" "note: defined" { target *-*-* } 0 } */
2910
+/* { dg-message "note: '\[^\n'\]*' declared here" "note: declared" { target *-*-* } 0 } */
2911
Index: gcc/testsuite/gcc.dg/transparent-union-3.c
2912
===================================================================
2913
--- a/src/gcc/testsuite/gcc.dg/transparent-union-3.c (revision
2914
+++ b/src/gcc/testsuite/gcc.dg/transparent-union-3.c (revision
2919
-union __attribute__((__transparent_union__)) ue1 { enum e; }; /* { dg-warning "declaration does not declare anything" } */
2920
-/* { dg-warning "union cannot be made transparent" "" { target *-*-* } 9 } */
2921
-union ue2 { enum e; } __attribute__((__transparent_union__)); /* { dg-warning "declaration does not declare anything" } */
2922
-/* { dg-warning "union cannot be made transparent" "" { target *-*-* } 11 } */
2923
+union __attribute__((__transparent_union__)) ue1 { enum e; }; /* { dg-warning "declaration does not declare anything" "not anything" } */
2924
+/* { dg-warning "union cannot be made transparent" "cannot" { target *-*-* } 9 } */
2925
+union ue2 { enum e; } __attribute__((__transparent_union__)); /* { dg-warning "declaration does not declare anything" "not anything" } */
2926
+/* { dg-warning "union cannot be made transparent" "cannot" { target *-*-* } 11 } */
2928
-union __attribute__((__transparent_union__)) ui1 { int; }; /* { dg-warning "declaration does not declare anything" } */
2929
-/* { dg-warning "union cannot be made transparent" "" { target *-*-* } 14 } */
2930
-union ui2 { int; } __attribute__((__transparent_union__)); /* { dg-warning "declaration does not declare anything" } */
2931
-/* { dg-warning "union cannot be made transparent" "" { target *-*-* } 16 } */
2932
+union __attribute__((__transparent_union__)) ui1 { int; }; /* { dg-warning "declaration does not declare anything" "not anything" } */
2933
+/* { dg-warning "union cannot be made transparent" "cannot" { target *-*-* } 14 } */
2934
+union ui2 { int; } __attribute__((__transparent_union__)); /* { dg-warning "declaration does not declare anything" "no anything" } */
2935
+/* { dg-warning "union cannot be made transparent" "cannot" { target *-*-* } 16 } */
2937
union __attribute__((__transparent_union__)) u1 { };
2938
/* { dg-warning "union cannot be made transparent" "" { target *-*-* } 19 } */
2939
Index: gcc/testsuite/gcc.dg/pr45461.c
2940
===================================================================
2941
--- a/src/gcc/testsuite/gcc.dg/pr45461.c (revision
2942
+++ b/src/gcc/testsuite/gcc.dg/pr45461.c (revision
2947
- e = va_arg (ap, short); /* { dg-warning "is promoted" } */
2948
+ e = va_arg (ap, short); /* { dg-warning "is promoted" "promoted" } */
2953
-/* { dg-message "note: \\(so you should pass" "" {target *-*-* } 12 } */
2954
-/* { dg-message "note: if this code" "" {target *-*-* } 12 } */
2955
+/* { dg-message "note: \\(so you should pass" "should pass" {target *-*-* } 12 } */
2956
+/* { dg-message "note: if this code" "if this code" {target *-*-* } 12 } */
2957
Index: gcc/testsuite/gcc.dg/ia64-sync-2.c
2958
===================================================================
2959
--- a/src/gcc/testsuite/gcc.dg/ia64-sync-2.c (revision
2960
+++ b/src/gcc/testsuite/gcc.dg/ia64-sync-2.c (revision
2962
/* { dg-options "-march=i486" { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
2963
/* { dg-options "-mcpu=v9" { target sparc*-*-* } } */
2965
-/* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */
2966
-/* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */
2967
+/* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "fetch_and_nand" { target *-*-* } 0 } */
2968
+/* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" "nand_and_fetch" { target *-*-* } 0 } */
2970
/* Test basic functionality of the intrinsics. */
2972
Index: gcc/testsuite/gcc.dg/parser-pr28152-2.c
2973
===================================================================
2974
--- a/src/gcc/testsuite/gcc.dg/parser-pr28152-2.c (revision
2975
+++ b/src/gcc/testsuite/gcc.dg/parser-pr28152-2.c (revision
2977
__complex__ float z;
2979
z = __complex__ (1.90000007326203904e+19, 0.0); /* { dg-error "__complex__" } */
2980
- z = __complex__ (1.0e+0, 0.0) / z; /* { dg-error "__complex__" } */
2981
- /* { dg-error "at end of input" "" { target *-*-* } 10 } */
2982
+ z = __complex__ (1.0e+0, 0.0) / z; /* { dg-error "__complex__" "Complex" } */
2983
+ /* { dg-error "at end of input" "end of input" { target *-*-* } 10 } */
2984
Index: gcc/testsuite/gcc.dg/torture/stackalign/alloca-6.c
2985
===================================================================
2986
--- a/src/gcc/testsuite/gcc.dg/torture/stackalign/alloca-6.c (revision
2987
+++ b/src/gcc/testsuite/gcc.dg/torture/stackalign/alloca-6.c (revision
2989
/* PR middle-end/45234 */
2990
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
2991
-/* { dg-options "-mincoming-stack-boundary=2 -mpreferred-stack-boundary=2" } */
2992
+/* { dg-additional-options "-mincoming-stack-boundary=2 -mpreferred-stack-boundary=2" } */
2996
Index: gcc/testsuite/gcc.dg/torture/stackalign/vararg-3.c
2997
===================================================================
2998
--- a/src/gcc/testsuite/gcc.dg/torture/stackalign/vararg-3.c (revision
2999
+++ b/src/gcc/testsuite/gcc.dg/torture/stackalign/vararg-3.c (revision
3001
/* PR middle-end/37009 */
3002
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
3003
-/* { dg-options "-msse2" } */
3004
+/* { dg-additional-options "-mmmx -msse2" } */
3005
/* { dg-require-effective-target sse2_runtime } */
3008
Index: gcc/testsuite/gcc.dg/torture/stackalign/stackalign.exp
3009
===================================================================
3010
--- a/src/gcc/testsuite/gcc.dg/torture/stackalign/stackalign.exp (revision
3011
+++ b/src/gcc/testsuite/gcc.dg/torture/stackalign/stackalign.exp (revision
3013
-# Copyright (C) 2008, 2010
3014
+# Copyright (C) 2008, 2010, 2012
3015
# Free Software Foundation, Inc.
3017
# This program is free software; you can redistribute it and/or modify
3019
# This harness is for tests that should be run at all optimisation levels.
3022
+load_lib torture-options.exp
3024
-set additional_flags ""
3025
+global DG_TORTURE_OPTIONS LTO_TORTURE_OPTIONS
3030
+# default_flags are replaced by a dg-options test directive, or appended
3031
+# to by using dg-additional-options. Use default_flags for options that
3032
+# are used in all of the torture sets to limit the amount of noise in
3034
+set default_flags ""
3036
+# torture_flags are combined with other torture options and do not
3037
+# affect options specified within a test.
3038
+set torture_flags ""
3040
+set stackalign_options [list]
3041
if { [check_effective_target_automatic_stack_alignment] } then {
3042
- lappend additional_flags "-mstackrealign"
3043
- lappend additional_flags "-mpreferred-stack-boundary=5"
3044
+ append default_flags " -mstackrealign"
3045
+ append default_flags " -mpreferred-stack-boundary=5"
3047
if { [istarget i?86*-*-*] || [istarget x86_64-*-*] } then {
3048
- lappend additional_flags "-mno-mmx"
3049
+ append default_flags " -mno-mmx"
3051
+lappend stackalign_options [join $torture_flags]
3055
-gcc-dg-runtest [lsort [glob $srcdir/$subdir/*.c]] $additional_flags
3056
if { [check_effective_target_fpic] } then {
3057
- set pic_additional_flags $additional_flags
3058
- lappend pic_additional_flags "-fpic"
3059
- gcc-dg-runtest [lsort [glob $srcdir/$subdir/*.c]] $pic_additional_flags
3060
+ set pic_torture_flags $torture_flags
3061
+ append pic_torture_flags " -fpic"
3062
+ lappend stackalign_options [join $pic_torture_flags]
3065
if { [check_effective_target_automatic_stack_alignment] } then {
3066
- lappend additional_flags "-mforce-drap"
3067
- gcc-dg-runtest [lsort [glob $srcdir/$subdir/*.c]] $additional_flags
3068
+ append torture_flags " -mforce-drap"
3069
+ lappend stackalign_options [join $torture_flags]
3070
if { [check_effective_target_fpic] } then {
3071
- set pic_additional_flags $additional_flags
3072
- lappend pic_additional_flags "-fpic"
3073
- gcc-dg-runtest [lsort [glob $srcdir/$subdir/*.c]] $pic_additional_flags
3074
+ set pic_torture_flags $torture_flags
3075
+ append pic_torture_flags " -fpic"
3076
+ lappend stackalign_options [join $pic_torture_flags]
3080
+# Combine stackalign options with the usual torture optimization flags.
3081
+set-torture-options [concat $DG_TORTURE_OPTIONS $LTO_TORTURE_OPTIONS] $stackalign_options
3083
+gcc-dg-runtest [lsort [glob $srcdir/$subdir/*.c]] "$default_flags"
3087
Index: gcc/testsuite/gcc.dg/torture/stackalign/push-1.c
3088
===================================================================
3089
--- a/src/gcc/testsuite/gcc.dg/torture/stackalign/push-1.c (revision
3090
+++ b/src/gcc/testsuite/gcc.dg/torture/stackalign/push-1.c (revision
3092
/* PR middle-end/37010 */
3093
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
3094
-/* { dg-options "-msse2 -mpreferred-stack-boundary=2" } */
3095
+/* { dg-additional-options "-mmmx -msse2 -mpreferred-stack-boundary=2" } */
3096
/* { dg-require-effective-target sse2_runtime } */
3098
#include <emmintrin.h>
3099
Index: gcc/testsuite/gcc.dg/torture/stackalign/alloca-2.c
3100
===================================================================
3101
--- a/src/gcc/testsuite/gcc.dg/torture/stackalign/alloca-2.c (revision
3102
+++ b/src/gcc/testsuite/gcc.dg/torture/stackalign/alloca-2.c (revision
3104
/* PR middle-end/37009 */
3105
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
3106
-/* { dg-options "-msse2" } */
3107
+/* { dg-additional-options "-mmmx -msse2" } */
3108
/* { dg-require-effective-target sse2_runtime } */
3110
#include <emmintrin.h>
3111
Index: gcc/testsuite/gcc.dg/torture/stackalign/alloca-3.c
3112
===================================================================
3113
--- a/src/gcc/testsuite/gcc.dg/torture/stackalign/alloca-3.c (revision
3114
+++ b/src/gcc/testsuite/gcc.dg/torture/stackalign/alloca-3.c (revision
3116
/* PR middle-end/37009 */
3117
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
3118
-/* { dg-options "-msse2" } */
3119
+/* { dg-additional-options "-mmmx -msse2" } */
3120
/* { dg-require-effective-target sse2_runtime } */
3122
#include <emmintrin.h>
3123
Index: gcc/testsuite/gcc.dg/torture/stackalign/alloca-4.c
3124
===================================================================
3125
--- a/src/gcc/testsuite/gcc.dg/torture/stackalign/alloca-4.c (revision
3126
+++ b/src/gcc/testsuite/gcc.dg/torture/stackalign/alloca-4.c (revision
3128
/* PR middle-end/37009 */
3129
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
3130
-/* { dg-options "-mincoming-stack-boundary=2 -mpreferred-stack-boundary=2" } */
3131
+/* { dg-additional-options "-mincoming-stack-boundary=2 -mpreferred-stack-boundary=2" } */
3135
Index: gcc/testsuite/gcc.dg/torture/stackalign/alloca-5.c
3136
===================================================================
3137
--- a/src/gcc/testsuite/gcc.dg/torture/stackalign/alloca-5.c (revision
3138
+++ b/src/gcc/testsuite/gcc.dg/torture/stackalign/alloca-5.c (revision
3140
/* PR middle-end/45234 */
3141
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
3142
-/* { dg-options "-mincoming-stack-boundary=2 -mpreferred-stack-boundary=2" } */
3143
+/* { dg-additional-options "-mincoming-stack-boundary=2 -mpreferred-stack-boundary=2" } */
3147
Index: gcc/testsuite/gcc.dg/Wfatal-2.c
3148
===================================================================
3149
--- a/src/gcc/testsuite/gcc.dg/Wfatal-2.c (revision
3150
+++ b/src/gcc/testsuite/gcc.dg/Wfatal-2.c (revision
3152
int i = INT_MAX + 1; /* { dg-error "integer overflow in expression" } */
3154
int j = INT_MIN - 1;
3155
-/* { dg-message "being treated as errors" "" { target *-*-* } 0 } */
3156
-/* { dg-message "terminated due to -Wfatal-errors" "" { target *-*-* } 0 } */
3157
+/* { dg-message "being treated as errors" "treated as errors" { target *-*-* } 0 } */
3158
+/* { dg-message "terminated due to -Wfatal-errors" "terminated" { target *-*-* } 0 } */
3159
Index: gcc/testsuite/gcc.dg/pr48552-1.c
3160
===================================================================
3161
--- a/src/gcc/testsuite/gcc.dg/pr48552-1.c (revision
3162
+++ b/src/gcc/testsuite/gcc.dg/pr48552-1.c (revision
3167
- __asm volatile ("" : : "r" (*x)); /* { dg-warning "dereferencing" } */
3168
-} /* { dg-error "invalid use of void expression" "" { target *-*-* } 10 } */
3169
+ __asm volatile ("" : : "r" (*x)); /* { dg-warning "dereferencing" "deref" } */
3170
+} /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } 10 } */
3175
- __asm volatile ("" : "=r" (*x)); /* { dg-warning "dereferencing" } */
3176
-} /* { dg-error "invalid use of void expression" "" { target *-*-* } 16 } */
3177
- /* { dg-error "invalid lvalue in asm output 0" "" { target *-*-* } 16 } */
3178
+ __asm volatile ("" : "=r" (*x)); /* { dg-warning "dereferencing" "deref" } */
3179
+} /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } 16 } */
3180
+ /* { dg-error "invalid lvalue in asm output 0" "invalid lvalue" { target *-*-* } 16 } */
3188
- __asm volatile ("" : : "g" (*x)); /* { dg-warning "dereferencing" } */
3189
-} /* { dg-error "invalid use of void expression" "" { target *-*-* } 34 } */
3190
+ __asm volatile ("" : : "g" (*x)); /* { dg-warning "dereferencing" "deref" } */
3191
+} /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } 34 } */
3196
- __asm volatile ("" : "=g" (*x)); /* { dg-warning "dereferencing" } */
3197
-} /* { dg-error "invalid use of void expression" "" { target *-*-* } 40 } */
3198
- /* { dg-error "invalid lvalue in asm output 0" "" { target *-*-* } 40 } */
3199
+ __asm volatile ("" : "=g" (*x)); /* { dg-warning "dereferencing" "deref" } */
3200
+} /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } 40 } */
3201
+ /* { dg-error "invalid lvalue in asm output 0" "invalid lvalue" { target *-*-* } 40 } */
3209
- __asm volatile ("" : "=r" (*x)); /* { dg-error "dereferencing pointer to incomplete type" } */
3210
-} /* { dg-error "invalid lvalue in asm output 0" "" { target *-*-* } 52 } */
3211
+ __asm volatile ("" : "=r" (*x)); /* { dg-error "dereferencing pointer to incomplete type" "incomplete" } */
3212
+} /* { dg-error "invalid lvalue in asm output 0" "invalid lvalue" { target *-*-* } 52 } */
3213
Index: gcc/testsuite/gcc.dg/tree-prof/tree-prof.exp
3214
===================================================================
3215
--- a/src/gcc/testsuite/gcc.dg/tree-prof/tree-prof.exp (revision
3216
+++ b/src/gcc/testsuite/gcc.dg/tree-prof/tree-prof.exp (revision
3221
-# Override the list defined in profopt.exp.
3222
-set PROFOPT_OPTIONS [list {}]
3224
if $tracelevel then {
3228
# Load support procs.
3229
load_lib profopt.exp
3231
+# Save and override the default list defined in profopt.exp.
3232
+set treeprof_save_profopt_options $PROFOPT_OPTIONS
3233
+set PROFOPT_OPTIONS [list {}]
3235
# These are globals used by profopt-execute. The first is options
3236
# needed to generate profile data, the second is options to use the
3240
profopt-execute $src
3243
+set PROFOPT_OPTIONS $treeprof_save_profopt_options
3244
Index: gcc/testsuite/gcc.dg/pr30551-5.c
3245
===================================================================
3246
--- a/src/gcc/testsuite/gcc.dg/pr30551-5.c (revision
3247
+++ b/src/gcc/testsuite/gcc.dg/pr30551-5.c (revision
3249
/* { dg-do compile } */
3250
/* { dg-options "-pedantic -Wno-main" } */
3252
-void main(char a) {} /* { dg-bogus "first argument of .main. should be .int." } */
3253
-/* { dg-bogus ".main. takes only zero or two arguments" "" { target *-*-* } 5 } */
3254
-/* { dg-bogus "return type of .main. is not .int." "" { target *-*-* } 5 } */
3255
+void main(char a) {} /* { dg-bogus "first argument of .main. should be .int." "int" } */
3256
+/* { dg-bogus ".main. takes only zero or two arguments" "zero or two" { target *-*-* } 5 } */
3257
+/* { dg-bogus "return type of .main. is not .int." "return type" { target *-*-* } 5 } */
3258
Index: gcc/testsuite/gcc.dg/wtr-int-type-1.c
3259
===================================================================
3260
--- a/src/gcc/testsuite/gcc.dg/wtr-int-type-1.c (revision
3261
+++ b/src/gcc/testsuite/gcc.dg/wtr-int-type-1.c (revision
3264
/* But this one should, since it doesn't fit in long (long), but
3265
does fit in unsigned long (long). */
3266
- i = 18446744073709551615; /* { dg-warning "integer constant is so large that it is unsigned" "decimal constant" } */
3267
- /* { dg-warning "this decimal constant would be unsigned in ISO C90" "decimal constant" { target *-*-* } 28 } */
3268
+ i = 18446744073709551615; /* { dg-warning "integer constant is so large that it is unsigned" "so large" } */
3269
+ /* { dg-warning "this decimal constant would be unsigned in ISO C90" "ISO C90" { target *-*-* } 28 } */
3271
# 29 "sys-header.h" 3
3273
Index: gcc/testsuite/gcc.dg/c99-vla-jump-3.c
3274
===================================================================
3275
--- a/src/gcc/testsuite/gcc.dg/c99-vla-jump-3.c (revision
3276
+++ b/src/gcc/testsuite/gcc.dg/c99-vla-jump-3.c (revision
3278
void fc288 (int n) { { typedef int (*b)[n]; { typedef int (*c)[n]; 0;} { typedef int (*d)[n]; 0;} ; typedef int (*e)[n]; 0;}; { typedef int (*f)[n]; { typedef int (*g)[n]; 0;}; { typedef int (*h)[n]; 0;}; ; typedef int (*i)[n]; 0;}; ; typedef int (*j)[n]; 0;a: goto a; }
3280
/* Match extra informative notes. */
3281
-/* { dg-message "note: label '\[^\n'\]*' defined here" "note: expected" { target *-*-* } 0 } */
3282
-/* { dg-message "note: '\[^\n'\]*' declared here" "note: expected" { target *-*-* } 0 } */
3283
+/* { dg-message "note: label '\[^\n'\]*' defined here" "note: defined" { target *-*-* } 0 } */
3284
+/* { dg-message "note: '\[^\n'\]*' declared here" "note: declared" { target *-*-* } 0 } */
3285
Index: gcc/testsuite/gcc.dg/pr30551.c
3286
===================================================================
3287
--- a/src/gcc/testsuite/gcc.dg/pr30551.c (revision
3288
+++ b/src/gcc/testsuite/gcc.dg/pr30551.c (revision
3290
/* { dg-do compile } */
3291
/* { dg-options "-Wall" } */
3292
/* { dg-skip-if "-Wmain not enabled with -Wall on SPU" { spu-*-* } } */
3293
-void main(char a) {} /* { dg-warning "first argument of .main. should be .int." } */
3294
-/* { dg-warning ".main. takes only zero or two arguments" "" { target *-*-* } 5 } */
3295
-/* { dg-warning "return type of .main. is not .int." "" { target *-*-* } 5 } */
3296
+void main(char a) {} /* { dg-warning "first argument of .main. should be .int." "int" } */
3297
+/* { dg-warning ".main. takes only zero or two arguments" "zero or two" { target *-*-* } 5 } */
3298
+/* { dg-warning "return type of .main. is not .int." "return type" { target *-*-* } 5 } */
3299
Index: gcc/testsuite/gcc.dg/Wfatal.c
3300
===================================================================
3301
--- a/src/gcc/testsuite/gcc.dg/Wfatal.c (revision
3302
+++ b/src/gcc/testsuite/gcc.dg/Wfatal.c (revision
3304
int i = INT_MAX + 1; /* { dg-warning "integer overflow in expression" } */
3305
int k = 1 / 0; /* { dg-error "division by zero" } */
3306
int j = INT_MIN - 1;
3307
-/* { dg-message "some warnings being treated as errors" "" {target "*-*-*"} 0 } */
3308
-/* { dg-message "terminated due to -Wfatal-errors" "" { target *-*-* } 0 } */
3309
+/* { dg-message "some warnings being treated as errors" "treated as errors" {target "*-*-*"} 0 } */
3310
+/* { dg-message "terminated due to -Wfatal-errors" "terminated" { target *-*-* } 0 } */
3314
Index: gcc/testsuite/gcc.dg/vla-8.c
3315
===================================================================
3316
--- a/src/gcc/testsuite/gcc.dg/vla-8.c (revision
3317
+++ b/src/gcc/testsuite/gcc.dg/vla-8.c (revision
3321
/* Match extra informative notes. */
3322
-/* { dg-message "note: label '\[^\n'\]*' defined here" "note: expected" { target *-*-* } 0 } */
3323
-/* { dg-message "note: '\[^\n'\]*' declared here" "note: expected" { target *-*-* } 0 } */
3324
+/* { dg-message "note: label '\[^\n'\]*' defined here" "defined" { target *-*-* } 0 } */
3325
+/* { dg-message "note: '\[^\n'\]*' declared here" "declared" { target *-*-* } 0 } */
3326
Index: gcc/testsuite/gcc.dg/sync-2.c
3327
===================================================================
3328
--- a/src/gcc/testsuite/gcc.dg/sync-2.c (revision
3329
+++ b/src/gcc/testsuite/gcc.dg/sync-2.c (revision
3331
/* { dg-options "-march=i486" { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
3332
/* { dg-options "-mcpu=v9" { target sparc*-*-* } } */
3334
-/* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */
3335
-/* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */
3336
+/* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "fetch_and_nand" { target *-*-* } 0 } */
3337
+/* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" "nand_and_fetch" { target *-*-* } 0 } */
3339
/* Test functionality of the intrinsics for 'short' and 'char'. */
3341
Index: gcc/testsuite/gcc.dg/mtune.c
3342
===================================================================
3343
--- a/src/gcc/testsuite/gcc.dg/mtune.c (revision
3344
+++ b/src/gcc/testsuite/gcc.dg/mtune.c (revision
3346
/* { dg-do compile } */
3347
/* { dg-skip-if "" { *-*-* } { "-mtune=*" } { "" } } */
3348
/* { dg-options "-mtune=foo" } */
3349
-/* { dg-error "mtune" "" { target *-*-* } 0 } */
3350
-/* { dg-bogus "march" "" { target *-*-* } 0 } */
3351
-/* { dg-bogus "mcpu" "" { target *-*-* } 0 } */
3352
+/* { dg-error "mtune" "mtune" { target *-*-* } 0 } */
3353
+/* { dg-bogus "march" "march" { target *-*-* } 0 } */
3354
+/* { dg-bogus "mcpu" "mcpu" { target *-*-* } 0 } */
3355
/* { dg-prune-output "note: valid arguments.*" } */
3357
Index: gcc/testsuite/gcc.dg/pr30457.c
3358
===================================================================
3359
--- a/src/gcc/testsuite/gcc.dg/pr30457.c (revision
3360
+++ b/src/gcc/testsuite/gcc.dg/pr30457.c (revision
3362
va_start(ap, paramN); /* { dg-warning "undefined behaviour when second parameter of 'va_start' is declared with 'register' storage" } */
3364
/* Undefined by C99 7.15.1.1p2: */
3365
- (void) va_arg(ap, char); /* { dg-warning "'char' is promoted to 'int' when passed through '...'" } */
3366
- /* { dg-message "note: .so you should pass .int. not .char. to .va_arg.." "" { target *-*-* } 20 } */
3367
- /* { dg-message "note: if this code is reached, the program will abort" "" { target *-*-* } 20 } */
3368
+ (void) va_arg(ap, char); /* { dg-warning "'char' is promoted to 'int' when passed through '...'" "promoted" } */
3369
+ /* { dg-message "note: .so you should pass .int. not .char. to .va_arg.." "int not char" { target *-*-* } 20 } */
3370
+ /* { dg-message "note: if this code is reached, the program will abort" "will abort" { target *-*-* } 20 } */
3374
Index: gcc/testsuite/gcc.dg/format/few-1.c
3375
===================================================================
3376
--- a/src/gcc/testsuite/gcc.dg/format/few-1.c (revision
3377
+++ b/src/gcc/testsuite/gcc.dg/format/few-1.c (revision
3379
int f(int *ip, char *cp)
3381
__builtin_printf ("%*.*s");
3382
-/* { dg-warning "field width specifier '\\*' expects a matching 'int' argument" "" { target *-*-* } 6 } */
3383
-/* { dg-warning "field precision specifier '\\.\\*' expects a matching 'int' argument" "" { target *-*-* } 6 } */
3384
-/* { dg-warning "format '%s' expects a matching 'char \\*' argument" "" { target *-*-* } 6 } */
3385
+/* { dg-warning "field width specifier '\\*' expects a matching 'int' argument" "width" { target *-*-* } 6 } */
3386
+/* { dg-warning "field precision specifier '\\.\\*' expects a matching 'int' argument" "precision" { target *-*-* } 6 } */
3387
+/* { dg-warning "format '%s' expects a matching 'char \\*' argument" "format" { target *-*-* } 6 } */
3388
__builtin_printf ("%*.*s", ip, *cp);
3389
-/* { dg-warning "field width specifier '\\*' expects argument of type 'int'" "" { target *-*-* } 10 } */
3390
-/* { dg-warning "format '%s' expects a matching 'char \\*' argument" "" { target *-*-* } 10 } */
3391
+/* { dg-warning "field width specifier '\\*' expects argument of type 'int'" "width" { target *-*-* } 10 } */
3392
+/* { dg-warning "format '%s' expects a matching 'char \\*' argument" "format" { target *-*-* } 10 } */
3393
__builtin_printf ("%s %i", ip, ip);
3394
-/* { dg-warning "format '%s' expects argument of type 'char \\*'" "" { target *-*-* } 13 } */
3395
-/* { dg-warning "format '%i' expects argument of type 'int'" "" { target *-*-* } 13 } */
3396
+/* { dg-warning "format '%s' expects argument of type 'char \\*'" "char" { target *-*-* } 13 } */
3397
+/* { dg-warning "format '%i' expects argument of type 'int'" "int" { target *-*-* } 13 } */
3398
__builtin_printf ("%s %i", cp);
3399
/* { dg-warning "format '%i' expects a matching 'int' argument" "" { target *-*-* } 16 } */
3400
__builtin_printf ("%lc");
3401
Index: gcc/testsuite/gcc.dg/pr28322-3.c
3402
===================================================================
3403
--- a/src/gcc/testsuite/gcc.dg/pr28322-3.c (revision
3404
+++ b/src/gcc/testsuite/gcc.dg/pr28322-3.c (revision
3409
-/* { dg-message "unrecognized command line option .-fno-foobar." "" { target *-*-* } 0 } */
3410
-/* { dg-message "unrecognized command line option .-mno-foobar." "" { target *-*-* } 0 } */
3411
+/* { dg-message "unrecognized command line option .-fno-foobar." "f" { target *-*-* } 0 } */
3412
+/* { dg-message "unrecognized command line option .-mno-foobar." "m" { target *-*-* } 0 } */
3413
Index: gcc/testsuite/gcc.misc-tests/bprob.exp
3414
===================================================================
3415
--- a/src/gcc/testsuite/gcc.misc-tests/bprob.exp (revision
3416
+++ b/src/gcc/testsuite/gcc.misc-tests/bprob.exp (revision
3421
-# Override the list defined in profopt.exp.
3422
-set PROFOPT_OPTIONS [list \
3426
- { -O2 -DPERFTIME } \
3427
- { -O3 -DPERFTIME } \
3428
- { -O3 -g -DPERFTIME } \
3431
if $tracelevel then {
3435
# Load support procs.
3436
load_lib profopt.exp
3438
+# Save and override the default list defined in profopt.exp.
3439
+set bprob_save_profopt_options $PROFOPT_OPTIONS
3440
+set PROFOPT_OPTIONS [list { -O2 } { -O3 }]
3442
set profile_options "-fprofile-arcs"
3443
set feedback_options "-fbranch-probabilities"
3446
profopt-execute $src
3450
+set PROFOPT_OPTIONS $bprob_save_profopt_options
1044
3451
Index: gcc/testsuite/ChangeLog
1045
3452
===================================================================
1046
3453
--- a/src/gcc/testsuite/ChangeLog (revision
1047
3454
+++ b/src/gcc/testsuite/ChangeLog (revision
3456
+2012-07-10 Uros Bizjak <ubizjak@gmail.com>
3458
+ Backport from mainline
3459
+ 2012-07-03 Uros Bizjak <ubizjak@gmail.com>
3462
+ * g++.dg/other/pr53811.C: New test.
3464
+2012-07-10 Jason Merrill <jason@redhat.com>
3467
+ * g++.dg/cpp0x/defaulted36.C: New.
3468
+ * g++.dg/cpp0x/defaulted21.C: Adjust.
3470
+ * g++.dg/cpp0x/implicit13.C: New.
3472
+2012-07-09 Janis Johnson <janisjo@codesourcery.com>
3474
+ Backport from mainline.
3475
+ 2012-06-28 Janis Johnson <janisjo@codesourcery.com>
3477
+ * g++.dg/cpp0x/nullptr19.c: Remove exta directives on same line.
3479
+ * g++.dg/template/error46.C: Add missing comment to dg-message.
3480
+ * g++.dg/template/crash107.C: Likewise.
3481
+ * g++.dg/template/error47.C: Likewise.
3482
+ * g++.dg/template/crash108.C: Likewise.
3483
+ * g++.dg/overload/operator5.C: Likewise.
3485
+ * gcc.dg/Wstrict-aliasing-converted-assigned.c: Fix syntax
3486
+ errors in dg-message directives, add comments.
3488
+ 2012-06-26 Janis Johnson <janisjo@codesourcery.com>
3490
+ * lib/scandump.exp (scan-dump, scan-dump-not, scan-dump-dem,
3491
+ scan-dump-dem-not): Use printable pattern in test name.
3493
+ 2012-06-25 Janis Johnson <janisjo@codesourcery.com>
3495
+ * lib/target-supports-dg.exp (testname-for-summary): New.
3496
+ * lib/profopt.exp (profopt_execute): Define testname_with_flags.
3497
+ * lib/gcc-dg.exp (cleanup-coverage-files, cleanup-repo-notes,
3498
+ cleanup-stack-usage, cleanup-dump, cleanup-saved-temps, scan-module,
3499
+ scan-module-absence, output-exists, output-exists-not: Use
3500
+ testname-for-summary.
3501
+ (dg-test): Clean up testname_with_flags.
3502
+ * lib/scanasm.exp (scan-assembler, scan-assembler-not, scan-hidden,
3503
+ scan-not-hidden, scan-file, scan-file-not, scan-stack-usage,
3504
+ scan-stack-usage-not, scan-assembler-times, scan-assembler-dem,
3505
+ scan-assembler-dem-not, object-size: Use testname-for-summary.
3506
+ * lib/gcov.exp (run-gcov): Likewise.
3507
+ * lib/scandump.exp (scan-dump, scan-dump-times, scan-dump-not,
3508
+ scan-dump-dem, scan-dump-dem-note): Likewise.
3510
+ * lib/profopt.exp: Make prof_option_list local to profopt-execute.
3511
+ * g++.dg/tree-prof/tree-prof.exp (PROFOPT_OPTIONS): Define after
3512
+ including profopt.opt; save and restore existing value.
3513
+ * g++.dg/bprob/bprob.exp: Likewise.
3514
+ * gcc.dg/matrix/matrix.exp: Likewise.
3515
+ * gcc.dg/tree-prof/tree-prof.exp: Likewise.
3516
+ * gcc.misc-tests/bprob.exp: Likewise; also replace formerly-ignored
3519
+ 2012-06-15 Janis Johnson <janosjo@codesourcery.com>
3521
+ * lib/gcov.exp (verify-lines, verify-branches, verify-calls): Use
3522
+ testname that includes flags, passed in as new argument, in
3523
+ pass/fail messages.
3524
+ (run_gcov): Get testname from dg-test, use it in pass/fail messages
3525
+ and pass it to verify-* procedures.
3527
+ * g++.dg/torture/stackalign/stackalign.exp: Combine stack
3528
+ alignment torture options with usual torture options.
3530
+ * g++.dg/cpp0x/auto27.C: Add comments to checks for multiple
3531
+ messages reported for one line of source code.
3532
+ * g++.dg/cpp0x/constexpr-decl.C: Likewise.
3533
+ * g++.dg/cpp0x/decltype2.C: Likewise.
3534
+ * g++.dg/cpp0x/decltype3.C: Likewise.
3535
+ * g++.dg/cpp0x/lambda/lambda-syntax1.C: Likewise.
3536
+ * g++.dg/cpp0x/regress/error-recovery1.C: Likewise.
3537
+ * g++.dg/cpp0x/static_assert3.C: Likewise.
3538
+ * g++.dg/cpp0x/udlit-cpp98-neg.C: Likewise.
3539
+ * g++.dg/cpp0x/udlit-shadow-neg.C: Likewise.
3540
+ * g++.dg/cpp0x/union1.C: Likewise.
3541
+ * g++.dg/cpp0x/variadic-ex10.C: Likewise.
3542
+ * g++.dg/cpp0x/variadic-ex14.C: Likewise.
3543
+ * g++.dg/cpp0x/variadic2.C: Likewise.
3544
+ * g++.dg/cpp0x/variadic20.C: Likewise.
3545
+ * g++.dg/cpp0x/variadic74.C: Likewise.
3546
+ * g++.dg/diagnostic/bitfld2.C: Likewise.
3547
+ * g++.dg/ext/attrib44.C: Likewise.
3548
+ * g++.dg/ext/no-asm-1.C: Likewise.
3549
+ * g++.dg/other/error34.C: Likewise.
3550
+ * g++.dg/parse/crash46.C: Likewise.
3551
+ * g++.dg/parse/error10.C: Likewise.
3552
+ * g++.dg/parse/error2.C: Likewise.
3553
+ * g++.dg/parse/error3.C: Likewise.
3554
+ * g++.dg/parse/error36.C: Likewise.
3555
+ * g++.dg/parse/error8.C: Likewise.
3556
+ * g++.dg/parse/error9.C: Likewise.
3557
+ * g++.dg/parse/parser-pr28152-2.C: Likewise.
3558
+ * g++.dg/parse/parser-pr28152.C: Likewise.
3559
+ * g++.dg/parse/template25.C: Likewise.
3560
+ * g++.dg/parse/typename11.C: Likewise.
3561
+ * g++.dg/tc1/dr147.C: Likewise.
3562
+ * g++.dg/template/deduce3.C: Likewise.
3563
+ * g++.dg/template/koenig9.C: Likewise.
3564
+ * g++.dg/template/pr23510.C: Likewise.
3565
+ * g++.dg/warn/pr12242.C: Likewise.
3566
+ * g++.dg/warn/pr30551-2.C: Likewise.
3567
+ * g++.dg/warn/pr30551.C: Likewise.
3568
+ * g++.old-deja/g++.other/typename1.C: Likewise.
3569
+ * g++.old-deja/g++.pt/niklas01a.C: Likewise.
3571
+ 2012-06-13 Janis Johnson <janisjo@codesourcery.com>
3573
+ PR testsuite/20771
3574
+ * lib/dg-pch.exp (dg-flags-pch): Add flags to make compile lines in
3575
+ test summary unique.
3577
+ * lib/scanasm.exp (scan-assembler, scan-assembler-not, scan-hidden,
3578
+ scan-not-hiddent, scan-file, scan-file-not, scan-stack-usage,
3579
+ scan-stack-usage-not): Don't strip torture options from test name.
3581
+ * lib/scandump.exp (scan-dump-times): Use printable version of
3582
+ regexp in test summary line.
3584
+ * gcc.dg/di-longlong64-sync-1.c: Add comments to checks for multiple
3585
+ messages reported for one line of source code.
3586
+ * gcc.dg/format/few-1.c: Likewise.
3587
+ * gcc.dg/ia64-sync-2.c: Likewise.
3588
+ * gcc.dg/sync-2.c: Likewise.
3589
+ * gcc.dg/noncompile/pr44517.c: Likewise.
3591
+ 2012-06-12 Janis Johnson <janisjo@codesourcery.com>
3593
+ * gcc.dg/torture/stackalign/stackalign.exp: Combine stack
3594
+ alignment torture options with usual torture options.
3595
+ * gcc.dg/torture/stackalign/alloca-2.c: Use dg-additional-options
3596
+ instead of dg-options.
3597
+ * gcc.dg/torture/stackalign/alloca-3.c: Likewise.
3598
+ * gcc.dg/torture/stackalign/alloca-4.c: Likewise.
3599
+ * gcc.dg/torture/stackalign/alloca-5.c: Likewise.
3600
+ * gcc.dg/torture/stackalign/alloca-6.c: Likewise.
3601
+ * gcc.dg/torture/stackalign/push-1.c: Likewise.
3602
+ * gcc.dg/torture/stackalign/vararg-3.c: Likewise.
3604
+ * gcc.target/arm/di-longlong64-sync-withhelpers.c: Add comments
3605
+ to checks for multiple messages reported for one line of source code.
3606
+ * gcc.target/arm/di-longlong64-sync-withldrexd.c: Likewise.
3608
+ * gcc.c-torture/compile/sync-1.c: Add comments to checks for multiple
3609
+ messages reported for one line of source code.
3611
+ * gcc.dg/20031223-1.c: Add comments to check for multiple
3612
+ messages reported for one line of source code.
3613
+ * gcc.dg/Wconversion-integer.c: Likewise.
3614
+ * gcc.dg/Wfatal-2.c: Likewise.
3615
+ * gcc.dg/Wfatal.c: Likewise.
3616
+ * gcc.dg/Wobjsize-1.c: Likewise.
3617
+ * gcc.dg/c99-vla-jump-1.c: Likewise.
3618
+ * gcc.dg/c99-vla-jump-2.c: Likewise.
3619
+ * gcc.dg/c99-vla-jump-3.c: Likewise.
3620
+ * gcc.dg/c99-vla-jump-4.c: Likewise.
3621
+ * gcc.dg/c99-vla-jump-5.c: Likewise.
3622
+ * gcc.dg/decl-9.c: Likewise.
3623
+ * gcc.dg/declspec-10.c: Likewise.
3624
+ * gcc.dg/declspec-18.c: Likewise.
3625
+ * gcc.dg/mtune.c: Likewise.
3626
+ * gcc.dg/parser-pr28152-2.c: Likewise.
3627
+ * gcc.dg/parser-pr28152.c: Likewise.
3628
+ * gcc.dg/pr14475.c: Likewise.
3629
+ * gcc.dg/pr27953.c: Likewise.
3630
+ * gcc.dg/pr28322-3.c: Likewise.
3631
+ * gcc.dg/pr30457.c: Likewise.
3632
+ * gcc.dg/pr30551-2.c: Likewise.
3633
+ * gcc.dg/pr30551-3.c: Likewise.
3634
+ * gcc.dg/pr30551-4.c: Likewise.
3635
+ * gcc.dg/pr30551-5.c: Likewise.
3636
+ * gcc.dg/pr30551-6.c: Likewise.
3637
+ * gcc.dg/pr30551.c: Likewise.
3638
+ * gcc.dg/pr45461.c: Likewise.
3639
+ * gcc.dg/pr48552-1.c: Likewise.
3640
+ * gcc.dg/pr48552-2.c: Likewise.
3641
+ * gcc.dg/redecl-1.c: Likewise.
3642
+ * gcc.dg/transparent-union-3.c: Likewise.
3643
+ * gcc.dg/utf-dflt.c: Likewise.
3644
+ * gcc.dg/utf-dflt2.c: Likewise.
3645
+ * gcc.dg/vla-8.c: Likewise.
3646
+ * gcc.dg/vla-init-1.c: Likewise.
3647
+ * gcc.dg/wtr-int-type-1.c: Likewise.
3649
+ * c-c++-common/raw-string-3.c: Add comments to checks for multiple
3650
+ messages reported for for one line of source code.
3651
+ * c-c++-common/raw-string-5.c: Likewise.
3652
+ * c-c++-common/raw-string-4.c: Likewise.
3653
+ * c-c++-common/raw-string-6.c: Likewise.
3654
+ * c-c++-common/pr20000.c: Likewise.
3656
+ * gcc.dg/cpp/include2a.c: Add comments to checks for multiple
3657
+ messages reported for one line of source code.
3658
+ * gcc.dg/cpp/pr30786.c: Likewise.
3659
+ * gcc.dg/cpp/pr28709.c: Likewise.
3660
+ * gcc.dg/cpp/missing-header-MD.c: Likewise.
3661
+ * gcc.dg/cpp/macspace2.c: Likewise.
3662
+ * gcc.dg/cpp/missing-header-1.c: Likewise.
3663
+ * gcc.dg/cpp/missing-header-MMD.c: Likewise.
3664
+ * gcc.dg/cpp/missing-sysheader-MD.c: Likewise.
3665
+ * gcc.dg/cpp/missing-sysheader-MMD.c: Likewise.
3667
+2012-07-09 Jason Merrill <jason@redhat.com>
3670
+ * g++.dg/cpp0x/nullptr29.C: New.
1049
3672
+2012-07-06 Mikael Morin <mikael@gcc.gnu.org>
1051
3674
+ PR fortran/53732
1719
5679
gnu_call = build_component_ref (gnu_call, NULL_TREE,
1720
5680
TREE_PURPOSE (gnu_elmt), false);
1721
5681
gnu_result_type = TREE_TYPE (gnu_call);
5682
Index: gcc/ada/ChangeLog-2011
5683
===================================================================
5684
--- a/src/gcc/ada/ChangeLog-2011 (revision
5685
+++ b/src/gcc/ada/ChangeLog-2011 (revision
5686
@@ -15259,3195 +15259,3 @@
5687
Copying and distribution of this file, with or without modification,
5688
are permitted in any medium without royalty provided the copyright
5689
notice and this notice are preserved.
5691
- * gnat_rm.texi: Ramification of pragma Eliminate documentation
5692
- - fix bugs in the description of Source_Trace;
5693
- - get rid of UNIT_NAME;
5695
-2011-08-02 Javier Miranda <miranda@adacore.com>
5698
- (Build_Dispatching_Requeue): Adding support for VM targets
5699
- since we cannot directly reference the Tag entity.
5700
- * exp_sel.adb (Build_K): Adding support for VM targets.
5701
- (Build_S_Assignment): Adding support for VM targets.
5703
- (Default_Prim_Op_Position): In VM targets do not restrict availability
5704
- of predefined interface primitives to compiling in Ada 2005 mode.
5705
- (Is_Predefined_Interface_Primitive): In VM targets this service is not
5706
- restricted to compiling in Ada 2005 mode.
5707
- (Make_VM_TSD): Generate code that declares and initializes the OSD
5708
- record. Needed to support dispatching calls through synchronized
5711
- (Make_Predefined_Primitive_Specs): Enable generation of predefined
5712
- primitives associated with synchronized interfaces.
5713
- (Make_Predefined_Primitive_Bodies): Enable generation of predefined
5714
- primitives associated with synchronized interfaces.
5716
-2011-08-02 Yannick Moy <moy@adacore.com>
5718
- * par-ch11.adb (P_Handled_Sequence_Of_Statements): mark a sequence of
5719
- statements hidden in SPARK if preceded by the HIDE directive
5720
- (Parse_Exception_Handlers): mark each exception handler in a sequence of
5721
- exception handlers as hidden in SPARK if preceded by the HIDE directive
5722
- * par-ch6.adb (P_Subprogram): mark a subprogram body hidden in SPARK
5723
- if starting with the HIDE directive
5724
- * par-ch7.adb (P_Package): mark a package body hidden in SPARK if
5725
- starting with the HIDE directive; mark the declarations in a private
5726
- part as hidden in SPARK if the private part starts with the HIDE
5728
- * restrict.adb, restrict.ads
5729
- (Set_Hidden_Part_In_SPARK): record a range of slocs as hidden in SPARK
5730
- (Is_In_Hidden_Part_In_SPARK): new function which returns whether its
5731
- argument node belongs to a part which is hidden in SPARK
5732
- (Check_SPARK_Restriction): do not issue violations on nodes in hidden
5733
- parts in SPARK; protect the possibly costly call to
5734
- Is_In_Hidden_Part_In_SPARK by a check that the SPARK restriction is on
5735
- * scans.ads (Token_Type): new value Tok_SPARK_Hide in enumeration
5736
- * scng.adb (Accumulate_Token_Checksum_GNAT_6_3,
5737
- Accumulate_Token_Checksum_GNAT_5_03): add case for new token
5739
- (Scan): recognize special comment starting with '#' and followed by
5740
- SPARK keyword "hide" as a HIDE directive.
5742
-2011-08-02 Yannick Moy <moy@adacore.com>
5744
- * types.ads, erroutc.ads: Minor reformatting.
5746
-2011-08-02 Vincent Celier <celier@adacore.com>
5748
- * link.c: Add response file support for cross platforms.
5750
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
5752
- * sem_aggr.adb (Resolve_Array_Aggregate): when copying the expression
5753
- in an association, set parent field of copy before partial analysis.
5754
- * sem_res.adb (Resolve_Slice): create reference to itype only when
5755
- expansion is enabled.
5757
-2011-08-02 Yannick Moy <moy@adacore.com>
5759
- * einfo.adb, einfo.ads (Body_Is_In_ALFA, Set_Body_Is_In_ALFA): get/set
5760
- for new flag denoting which subprogram bodies are in ALFA
5761
- * restrict.adb, sem_ch7.adb: Update comment
5762
- * sem_ch11.adb, sem_ch2.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb,
5763
- sem_ch9.adb, sem_res.adb: Add calls to
5764
- Current_Subprogram_Body_Is_Not_In_ALFA on unsupported constructs.
5765
- * sem_ch6.adb (Analyze_Function_Return): add calls to
5766
- Current_Subprogram_Body_Is_Not_In_ALFA on return statement in the
5767
- middle of the body, and extended return.
5768
- (Check_Missing_Return): add calls to Set_Body_Is_In_ALFA with argument
5769
- False when missing return.
5770
- (Analyze_Subprogram_Body_Helper): initialize the flag Body_Is_In_ALFA
5771
- to True for subprograms whose spec is in ALFA. Remove later on the flag
5772
- on the entity used for a subprogram body when there exists a separate
5774
- * sem_util.adb, sem_util.ads (Current_Subprogram_Body_Is_Not_In_ALFA):
5775
- if Current_Subprogram is not Empty, set its flag Body_Is_In_ALFA to
5776
- False, otherwise do nothing.
5778
-2011-08-02 Robert Dewar <dewar@adacore.com>
5780
- * inline.adb, stand.ads, sem_ch6.adb, sem_ch8.adb: Minor reformatting.
5782
-2011-08-02 Yannick Moy <moy@adacore.com>
5784
- * sem_ch4.ads: minor formatting.
5786
-2011-08-02 Yannick Moy <moy@adacore.com>
5788
- * sem_aggr.adb, err_vars.ads, sem_ch3.adb, sem_ch5.adb, sem_ch9.adb,
5789
- debug.adb, sem_util.adb, sem_res.adb, sem_attr.adb, gnat1drv.adb,
5790
- errout.adb, errout.ads, exp_ch6.adb, sem_ch4.adb, restrict.adb,
5791
- restrict.ads, sem_ch6.adb, sem_ch8.adb, sem_ch11.adb,
5792
- opt.ads: cleanup of SPARK mode
5794
-2011-08-02 Yannick Moy <moy@adacore.com>
5796
- * cstand.adb (Create_Standard): sets Is_In_ALFA component of standard
5798
- * einfo.adb, einfo.ads (Is_In_ALFA): add flag for all entities
5799
- (Is_In_ALFA, Set_Is_In_ALFA): new subprograms to access flag Is_In_ALFA
5801
- (Analyze_Object_Declaration): set Is_In_ALFA flag for objects
5802
- (Constrain_Enumeration): set Is_In_ALFA flag for enumeration subtypes
5803
- (Constrain_Integer): set Is_In_ALFA flag for integer subtypes
5804
- (Enumeration_Type_Declaration): set Is_In_ALFA flag for enumeration
5806
- (Set_Scalar_Range_For_Subtype): unset Is_In_ALFA flag for subtypes with
5808
- * sem_ch6.adb (Analyze_Return_Type): unset Is_In_ALFA flag for
5809
- functions whose return type is not in ALFA.
5810
- (Analyze_Subprogram_Specification): set Is_In_ALFA flag for subprogram
5812
- (Process_Formals): unset Is_In_ALFA flag for subprograms if a
5813
- parameter's type is not in ALFA.
5814
- * stand.ads (Standard_Type_Is_In_ALFA): array defines which standard
5815
- types are in ALFA.
5817
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
5819
- * sem_ch6 (Analyze_Expression_Function): treat the function as
5820
- Inline_Always, and introduce a subprogram declaration for it when it is
5822
- * inline.adb (Add_Inlined_Body): recognize bodies that come from
5823
- expression functions, so that the back-end can determine whether they
5824
- can in fact be inlined.
5825
- * sem_util.adb (Is_Expression_Function): predicate to determine whether
5826
- a function body comes from an expression function.
5828
-2011-08-02 Gary Dismukes <dismukes@adacore.com>
5830
- * sem_ch6.adb (Check_Conformance): Revise the check for nonconforming
5831
- null exclusions to test Can_Never_Be_Null on the anonymous access types
5832
- of the formals rather than testing the formals themselves. Exclude this
5833
- check in cases where the Old_Formal is marked as a controlling formal,
5834
- to avoid issuing spurious errors for bodies completing dispatching
5835
- operations (due to the flag not getting set on controlling access
5836
- formals in body specs).
5837
- (Find_Corresponding_Spec): When checking full and subtype conformance of
5838
- subprogram bodies in instances, pass Designated and E in that order, for
5839
- consistency with the expected order of the formals (New_Id followed by
5842
-2011-08-02 Robert Dewar <dewar@adacore.com>
5844
- * sem_ch8.adb: Minor reformatting.
5846
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
5848
- * sem_ch8.adb (Analyze_Subprogram_Renaming): new procedure
5849
- Check_Class_Wide_Actual, to implement AI05-0071, on defaulted
5850
- primitive operations of class-wide actuals.
5852
-2011-08-02 Javier Miranda <miranda@adacore.com>
5854
- * exp_atag.ads, exp_atag.adb
5855
- (Build_Common_Dispatching_Select_Statements): Remove argument Loc
5856
- since its value is implicitly passed in argument Typ.
5857
- * exp_disp.adb (Make_Disp_Conditional_Select_Body,
5858
- Make_Disp_Timed_Select_Body): Remove Loc in calls to routine
5859
- Build_Common_Dispatching_Select_Statements.
5861
-2011-08-02 Robert Dewar <dewar@adacore.com>
5863
- * sem_ch3.adb, exp_atag.ads, get_scos.adb, get_scos.ads,
5864
- exp_disp.adb, lib-xref.adb, lib-xref.ads: Update comments.
5865
- Minor reformatting.
5867
-2011-08-02 Robert Dewar <dewar@adacore.com>
5869
- * sem_res.adb: Minor reformatting.
5870
- * sem_prag.adb: Minor reformatting.
5872
-2011-08-02 Javier Miranda <miranda@adacore.com>
5874
- * exp_atag.adb, exp_atags.ads
5875
- (Build_Common_Dispatching_Select_Statement): Replace argument DT_Ptr
5876
- by the tagged type Entity. Required to use this routine in the VM
5877
- targets since we do not have available the Tag entity in the VM
5880
- (Expand_N_Subprogram_Body): Do not invoke Build_VM_TSDs if package
5881
- Ada.Tags has not been previously loaded.
5883
- (Expand_N_Package_Declaration, Expand_N_Package_Body): Do not invoke
5884
- Build_VM_TSDs if package Ada.Tags has not been previously loaded.
5886
- (Enclosing_Dynamic_Scope): Add missing support to handle the full
5887
- view of enclosing scopes. Required to handle enclosing scopes that
5888
- are synchronized types whose full view is a task type.
5890
- (Build_VM_TSDs): Minor code improvement to avoid generating and
5891
- analyzing lists with empty nodes.
5892
- (Make_Disp_Asynchronous_Select_Body): Add support for VM targets.
5893
- (Make_Disp_Conditional_Select_Body): Add support for VM targets.
5894
- (Make_Disp_Get_Prim_Op_Kind): Add support for VM targets.
5895
- (Make_Disp_Timed_Select_Body): Add support for VM targets.
5896
- (Make_Select_Specific_Data_Table): Add support for VM targets.
5897
- (Make_VM_TSD): Generate code to initialize the SSD structure of
5900
-2011-08-02 Yannick Moy <moy@adacore.com>
5902
- * lib-writ.adb (Write_ALI): when ALFA mode is set, write local
5903
- cross-references section in ALI.
5904
- * lib-xref.adb, lib-xref.ads (Xref_Entry): add components Sub
5905
- (enclosing subprogram), Slc (location of Sub) and Sun (unit number of
5907
- (Enclosing_Subprogram_Or_Package): new function to return the enclosing
5908
- subprogram or package entity of a node
5909
- (Is_Local_Reference_Type): new function returns True for references
5910
- selected in local cross-references.
5911
- (Lt): function extracted from Lt in Output_References
5912
- (Write_Entity_Name): function extracted from Output_References
5913
- (Generate_Definition): generate reference with type 'D' for definition
5914
- of objects (object declaration and parameter specification), with
5915
- appropriate locations and units, for use in local cross-references.
5916
- (Generate_Reference): update fields Sub, Slc and Sun. Keep newly created
5917
- references of type 'I' for initialization in object definition.
5918
- (Output_References): move part of function Lt and procedure
5919
- Write_Entity_Name outside of the body. Ignore references of types 'D'
5920
- and 'I' introduced for local cross-references.
5921
- (Output_Local_References): new procedure to output the local
5922
- cross-references sections.
5923
- (Lref_Entity_Status): new array defining whether an entity is a local
5924
- * sem_ch3.adb (Analyze_Object_Declaration): call Generate_Reference
5925
- with 'I' type when initialization expression is present.
5926
- * get_scos.adb, get_scos.ads: Correct comments and typos
5928
-2011-08-02 Javier Miranda <miranda@adacore.com>
5930
- * exp_ch6.adb (Expand_N_Subprogram_Body): Enable generation of TSDs in
5932
- * exp_ch7.adb (Expand_N_Package_Body): Enable generation of TSDs in
5934
- * exp_disp.adb (Build_VM_TSDs): No action needed if the runtime has no
5937
-2011-08-02 Vincent Celier <celier@adacore.com>
5939
- * prj-nmsc.adb (File_Found): New components Excl_File and Excl_Line
5940
- (No_Space_Img): New function
5941
- (Find_Excluded_Sources): When reading from a file, record the file name
5942
- and the line number for each excluded source.
5943
- (Mark_Excluded_Sources): When reporting an error, if the excluded
5944
- sources were read from a file, include file name and line number in
5945
- the error message.
5947
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
5949
- * sem_res.adb (Resolve_Call): implement rule in RM 12.5.1 (23.3/2).
5951
-2011-08-02 Robert Dewar <dewar@adacore.com>
5953
- * exp_ch7.adb exp_ch6.adb, exp_disp.adb: Minor reformatting
5955
-2011-08-02 Javier Miranda <miranda@adacore.com>
5957
- * exp_ch6.adb (Expand_N_Subprogram_Body): Temporarily restrict the
5958
- generation of TSDs to the DOTNET compiler.
5959
- * exp_ch7.adb (Expand_N_Package_Body): Temporarily restrict the
5960
- generation of TSDs to the DOTNET compiler.
5962
-2011-08-02 Javier Miranda <miranda@adacore.com>
5964
- * exp_disp.ads (Build_VM_TSDs): Build the runtime Type Specific Data
5965
- record of all the tagged types declared inside library level package
5966
- declarations, library level package bodies or library level subprograms.
5967
- * exp_disp.adb (Make_VM_TSD): New subprogram that builds the TSD
5968
- associated with a given tagged type.
5969
- (Build_VM_TSDs): New subprogram.
5970
- * exp_ch6.adb (Expand_N_Subprogram_Body): Generate TSDs records of main
5971
- compilation units that are subprograms.
5972
- * exp_ch7.adb (Expand_N_Package_Body): Generate TSDs of main
5973
- compilation units that are package bodies.
5974
- (Expand_N_Package_Declaration): Generate TSDs of the main compilation
5975
- units that are a package declaration or a package instantiation.
5976
- * exp_intr.adb (Expand_Dispatching_Constructor_Call): Minor code
5977
- reorganization to improve the error generated by the frontend when the
5978
- function Ada.Tags.Secondary_Tag is not available.
5979
- * rtsfind.ads (RE_Register_TSD): New runtime entity.
5980
- * exp_ch4.adb (Expand_N_Type_Conversion): Minor code cleanup.
5982
-2011-08-02 Javier Miranda <miranda@adacore.com>
5984
- * exp_disp.adb (Make_DT): Generate call to Check_TSD in Ada 2005 mode.
5986
-2011-08-02 Robert Dewar <dewar@adacore.com>
5988
- * s-imenne.ads: Minor reformatting.
5990
-2011-08-02 Robert Dewar <dewar@adacore.com>
5992
- * a-stunau.ads: Add pragma Suppress_Initialization for Big_String
5993
- * freeze.adb (Warn_Overlay): Don't warn if initialization suppressed
5994
- * s-stalib.ads: Add pragma Suppress_Initialization for Big_String
5996
-2011-08-02 Robert Dewar <dewar@adacore.com>
5998
- * einfo.ads (Materialize_Entity): Document this is only for renamings
5999
- * exp_ch3.adb (Expand_N_Object_Declaration): Make sure we generate
6000
- required debug information in the case where we transform the object
6001
- declaration into a renaming declaration.
6002
- * exp_ch4.adb (Expand_Concatenate): Generate debug info for result
6004
- * exp_dbug.ads (Debug_Renaming_Declaration): Document setting of
6005
- Materialize_Entity.
6007
-2011-08-02 Robert Dewar <dewar@adacore.com>
6009
- * einfo.ads, einfo.adb (Suppress_Initialization): Replaces
6010
- Suppress_Init_Procs.
6011
- * exp_ch3.adb, exp_disp.adb, freeze.adb: Use
6012
- Suppress_Initialization/Initialization_Suppressed.
6013
- * gnat_rm.texi: New documentation for pragma Suppress_Initialization
6014
- * sem_aux.ads, sem_aux.adb (Initialization_Suppressed): New function
6015
- * sem_dist.adb: Use Suppress_Initialization/Initialization_Suppressed
6016
- * sem_prag.adb: New processing for pragma Suppress_Initialization.
6018
-2011-08-02 Robert Dewar <dewar@adacore.com>
6020
- * gnat_rm.texi, a-tags.ads, sem_prag.adb, sem_ch12.adb, exp_disp.adb:
6021
- Minor reformatting.
6023
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6025
- * sem_prag.adb (Chain_PPC): Implement AI04-0230: null procedures can
6026
- only have inheritable classwide pre/postconditions.
6028
-2011-08-02 Javier Miranda <miranda@adacore.com>
6030
- * a-tags.ads, a-tags.adb (Check_TSD): New subprogram.
6031
- * rtsfind.ads (RE_Check_TSD): New runtime entity.
6032
- * exp_disp.adb (Make_DT): Generate call to the new runtime routine that
6033
- checks if the external tag of a type is the same as the external tag
6034
- of some other declaration.
6036
-2011-08-02 Thomas Quinot <quinot@adacore.com>
6038
- * s-taskin.ads: Minor reformatting.
6040
-2011-08-02 Emmanuel Briot <briot@adacore.com>
6042
- * g-comlin.adb (Display_Help): swap the order in which it prints the
6043
- short help and the general usage.
6045
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6047
- * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): copy properly
6048
- the aspect declarations and attach them to the generic copy for
6049
- subsequent analysis.
6050
- (Analyze_Subprogram_Instantiation): copy explicitly the aspect
6051
- declarations of the generic tree to the new subprogram declarations.
6052
- * sem_attr.adb (Check_Precondition_Postcondition): recognize
6053
- conditions that apply to a subprogram instance.
6055
-2011-08-02 Robert Dewar <dewar@adacore.com>
6057
- * gnat_rm.texi: Clarify doc on pragma Source_File_Name[_Project].
6059
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6061
- * sem_ch3.adb (Derived_Type_Declaration): When checking that a untagged
6062
- private type with a tagged full view is not derived in the immediate
6063
- scope of the partial view, (RM 7.3 (7)) use the scope of the base type.
6065
-2011-08-02 Robert Dewar <dewar@adacore.com>
6067
- * exp_ch4.adb: Minor reformatting.
6069
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6071
- * sem_ch5.adb (Analyze_Loop_Statement): If the iteration scheme is an
6072
- Ada2012 iterator, the loop will be rewritten during expansion into a
6073
- while loop with a cursor and an element declaration. Do not analyze the
6074
- body in this case, because if the container is for indefinite types the
6075
- actual subtype of the elements will only be determined when the cursor
6076
- declaration is analyzed.
6078
-2011-08-02 Arnaud Charlet <charlet@adacore.com>
6080
- * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Ignore
6081
- size/alignment related attributes in CodePeer_Mode.
6083
-2011-08-02 Gary Dismukes <dismukes@adacore.com>
6085
- * sem_ch3.adb (Check_Ops_From_Incomplete_Type): Remove call to
6086
- Prepend_Element, since this can result in the operation getting the
6087
- wrong slot in the full type's dispatch table if the full type has
6088
- inherited operations. The incomplete type's operation will get added
6089
- to the proper position in the full type's primitives
6090
- list later in Sem_Disp.Check_Operation_From_Incomplete_Type.
6091
- (Process_Incomplete_Dependents): Add Is_Primitive test when checking for
6092
- dispatching operations, since there are cases where nonprimitive
6093
- subprograms can get added to the list of incomplete dependents (such
6094
- as subprograms in nested packages).
6095
- * sem_ch6.adb (Process_Formals): First, remove test for being in a
6096
- private part when determining whether to add a primitive with a
6097
- parameter of a tagged incomplete type to the Private_Dependents list.
6098
- Such primitives can also occur in the visible part, and should not have
6099
- been excluded from being private dependents.
6100
- * sem_ch7.adb (Uninstall_Declarations): When checking the rule of
6101
- RM05-3.10.1(9.3/2), test that a subprogram in the Private_Dependents
6102
- list of a Taft-amendment incomplete type is a primitive before issuing
6103
- an error that the full type must appear in the same unit. There are
6104
- cases where nonprimitives can be in the list (such as subprograms in
6106
- * sem_disp.adb (Derives_From): Use correct condition for checking that
6107
- a formal's type is derived from the type of the corresponding formal in
6108
- the parent subprogram (the condition was completely wrong). Add
6109
- checking that was missing for controlling result types being derived
6110
- from the result type of the parent operation.
6112
-2011-08-02 Yannick Moy <moy@adacore.com>
6114
- * errout.adb (First_Node): minor renaming
6115
- * restrict.adb (Check_Formal_Restriction): put restriction warning on
6118
-2011-08-02 Yannick Moy <moy@adacore.com>
6120
- * sem_res.adb (Resolve_Logical_Op): ensure N is a binary operator
6121
- before accessing operands.
6122
- * sem_util.adb (Is_SPARK_Initialization_Expr): follow original nodes to
6123
- decide whether an initialization expression respects SPARK rules, as
6124
- the plain node is the expanded one. This allows for more valid warnings
6126
- * gnat_rm.texi: Minor update.
6128
-2011-08-02 Arnaud Charlet <charlet@adacore.com>
6130
- * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Revert
6133
-2011-08-02 Robert Dewar <dewar@adacore.com>
6135
- * sem_ch3.adb, sem_ch4.adb: Minor reformatting.
6137
-2011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
6139
- * exp_ch5.adb (Expand_Iterator_Loop): Reformatting. Wrap the original
6140
- loop statements and the element renaming declaration with a block when
6141
- the element type is controlled.
6143
-2011-08-02 Yannick Moy <moy@adacore.com>
6145
- * sinfo.ads: Minor formatting.
6147
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6149
- * sem_aggr.adb (Add_Association): if the association has a box and no
6150
- expression, use the Sloc of the aggregate itself for the new
6152
- * errout.adb (First_Node): Exclude nodes with no Sloc, and always use
6153
- the Original_Node.
6155
-2011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
6157
- * exp_ch5.adb (Expand_Iterator_Loop): Code cleanup and refactoring.
6158
- When a container is provided via a function call, generate a renaming
6159
- of the function result. This avoids the creation of a transient scope
6160
- and the premature finalization of the container.
6161
- * exp_ch7.adb (Is_Container_Cursor): Removed.
6162
- (Wrap_Transient_Declaration): Remove the supression of the finalization
6163
- of the list controller when the declaration denotes a container cursor,
6166
-2011-08-02 Yannick Moy <moy@adacore.com>
6168
- * restrict.adb (Check_Formal_Restriction): only issue a warning if the
6169
- node is from source, instead of the original node being from source.
6171
- (Resolve_Array_Aggregate): refine the check for a static expression, to
6172
- recognize also static ranges
6173
- * sem_ch3.adb, sem_ch3.ads (Analyze_Component_Declaration,
6174
- Array_Type_Declaration): postpone the test for the type being a subtype
6175
- mark after the type has been resolved, so that component-selection and
6176
- expanded-name are discriminated.
6177
- (Make_Index, Process_Range_Expr_In_Decl): add a parameter In_Iter_Schm
6178
- to distinguish the case of an iteration scheme, so that an error is
6179
- issed on a non-static range in SPARK except in an iteration scheme.
6180
- * sem_ch5.adb (Analyze_Iteration_Scheme): call Make_Index with
6181
- In_Iter_Schm = True.
6182
- * sem_ch6.adb (Analyze_Subprogram_Specification): refine the check for
6183
- user-defined operators so that they are allowed in renaming
6185
- (Find_Selected_Component): refine the check for prefixing of operators
6186
- so that they are allowed in renaming. Move the checks for restrictions
6187
- on selector name after analysis discriminated between
6188
- component-selection and expanded-name.
6189
- * sem_res.adb (Resolve_Op_Concat_Arg): do not issue a warning on
6190
- concatenation argument of string type if it is static.
6191
- * sem_util.adb, sem_util.ads
6192
- (Check_Later_Vs_Basic_Declarations): add a new function
6193
- Is_Later_Declarative_Item to decice which declarations are allowed as
6194
- later items, in the two different modes Ada 83 and SPARK. In the SPARK
6195
- mode, add that renamings are considered as later items.
6196
- (Enclosing_Package): new function to return the enclosing package
6197
- (Enter_Name): correct the rule for homonyms in SPARK
6198
- (Is_SPARK_Initialization_Expr): default to returning True on nodes not
6199
- from source (result of expansion) to avoid issuing wrong warnings.
6201
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6203
- * errout.adb: On anything but an expression First_Node returns its
6206
-2011-08-02 Pascal Obry <obry@adacore.com>
6208
- * prj-proc.adb, make.adb, makeutl.adb: Minor reformatting.
6210
-2011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
6212
- * exp_ch5.adb (Expand_Iterator_Loop): Code cleanup and reorganization.
6213
- Set the associated loop as the related expression of internally
6214
- generated cursors.
6215
- * exp_ch7.adb (Is_Container_Cursor): New routine.
6216
- (Wrap_Transient_Declaration): Supress the finalization of the list
6217
- controller when the declaration denotes a container cursor.
6219
-2011-08-02 Yannick Moy <moy@adacore.com>
6221
- * opt.ads (SPARK_Mode): update comment, SPARK_Mode only set through
6223
- * par-ch3.adb (P_Delta_Constraint): remove check in SPARK mode that the
6224
- expression is a simple expression. This check cannot be performed in
6225
- the semantics, so just drop it.
6226
- (P_Index_Or_Discriminant_Constraint): move check that the index or
6227
- discriminant is a subtype mark to Analyze_Subtype_Declaration in the
6228
- semantics. Other cases were previously checked in the semantics.
6229
- * par-ch4.adb (P_Name): move checks that a selector name is not
6230
- character literal or an operator symbol to Find_Selected_Component in
6232
- * par-ch5.adb (Parse_Decls_Begin_End): move check that basic
6233
- declarations are not placed after later declarations in a separate
6234
- procedure in Sem_Util (possibly not the best choice?), to be used both
6235
- during parsing, for Ada 83 mode, and during semantic analysis, for
6237
- * par-endh.adb (Check_End): move check that end label is not missing
6238
- to Process_End_Label in the semantics
6239
- * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): remove
6240
- the special case for SPARK restriction
6241
- * par.adb: use and with Sem_Util, for use in Parse_Decls_Begin_End
6242
- * restrict.adb, restrict.ads (Check_Formal_Restriction): add a
6243
- parameter Force to issue the error message even on internal node (used
6244
- for generated end label). Call Check_Restriction to check when an error
6245
- must be issued. In SPARK mode, issue an error message even if the
6246
- restriction is not set.
6247
- (Check_Restriction): new procedure with an additional out parameter to
6248
- inform the caller that a message has been issued
6249
- * sem_aggr.adb: Minor modification of message
6250
- * sem_attr.adb (Analyze_Attribute): call Check_Formal_Restriction
6251
- instead of issuing an error message directly
6252
- * sem_ch3.adb (Analyze_Declarations): move here the check that basic
6253
- declarations are not placed after later declarations, by calling
6254
- Check_Later_Vs_Basic_Declarations
6255
- (Analyze_Subtype_Declaration): move here the check that an index or
6256
- discriminant constraint must be a subtype mark. Change the check that
6257
- a subtype of String must start at one so that it works on subtype marks.
6258
- * sem_ch4.adb (Analyze_Call): move here the check that a named
6259
- association cannot follow a positional one in a call
6260
- * sem_ch5.adb (Check_Unreachable_Code): call Check_Formal_Restriction
6261
- instead of issuing an error message directly
6262
- * sem_ch8.adb (Find_Selected_Component): move here the check that a
6263
- selector name is not a character literal or an operator symbol. Move
6264
- here the check that the prefix of an expanded name cannot be a
6265
- subprogram or a loop statement.
6266
- * sem_util.adb, sem_util.ads (Check_Later_Vs_Basic_Declarations): new
6267
- procedure called from parsing and semantics to check that basic
6268
- declarations are not placed after later declarations
6269
- (Process_End_Label): move here the check that end label is not missing
6271
-2011-08-02 Arnaud Charlet <charlet@adacore.com>
6273
- * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Ignore enum
6274
- representation clause in codepeer mode, since it confuses CodePeer and
6275
- does not bring useful info.
6277
-2011-08-02 Ed Falis <falis@adacore.com>
6279
- * init.c: initialize fp hw on MILS.
6281
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6283
- * errout.adb (First_Node): for bodies, return the node itself (small
6284
- optimization). For other nodes, do not check source_unit if the node
6285
- comes from Standard.
6287
-2011-08-02 Robert Dewar <dewar@adacore.com>
6289
- * exp_ch3.adb: Minor comment additions.
6290
- * sem_ch13.adb: Minor reformatting.
6292
-2011-08-02 Pascal Obry <obry@adacore.com>
6294
- * make.adb, makeutl.adb: Removes some superfluous directory separator.
6296
-2011-08-02 Robert Dewar <dewar@adacore.com>
6298
- * sem_attr.adb: Minor reformatting.
6300
-2011-08-02 Robert Dewar <dewar@adacore.com>
6302
- * einfo.adb (Has_Default_Aspect): Replaces Has_Default_Value
6303
- (Has_Default_Component_Value): Removed
6304
- * einfo.ads Comment updates
6305
- (Has_Default_Aspect): Replaces Has_Default_Value
6306
- (Has_Default_Component_Value): Removed
6308
- (Expand_N_Freeze_Entity): Handle Default[_Component]_Value aspects
6310
- (Build_Array_Init_Proc): Handle Default_[Component_]Value aspects
6311
- (Get_Simple_Init_Val): Handle Default_Value aspect
6312
- (Needs_Simple_Initialization): Handle Default_Value aspect
6313
- * exp_ch3.ads: Needs_Simple_Initialization
6314
- * freeze.adb (Freeze_Entity): Handle Default_[Component_]Value aspect
6315
- * par-prag.adb (Pragma_Default[_Component]Value) Removed
6317
- (Analyze_Aspect_Specifications): Fix Default[_Component]_Value aspects
6318
- * sem_prag.adb (Pragma_Default[_Component]Value) Removed
6319
- * snames.ads-tmpl (Pragma_Default[_Component]Value) Removed
6321
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6323
- * sem_ch5.adb (Analyze_Iterator_Specification): use base type to locate
6324
- package containing iteration primitives.
6325
- exp_ch5.adb (Expand_Iterator_Loop): ditto.
6327
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6329
- * sem_ch5.adb (Analyze_Iteration_Scheme): For an Ada2012 iterator with
6330
- "of", pre-analyze expression in case it is a function call with
6331
- finalization actions that must be placed ahead of the loop.
6332
- * exp_ch5.adb (Expand_Iterator_Loop): If condition_actions are present
6333
- on an Ada2012 iterator, insert them ahead of the rewritten loop.
6335
-2011-08-02 Geert Bosch <bosch@adacore.com>
6337
- * cstand.adb (Create_Float_Types): Only consider C's long double for
6338
- Long_Long_Float, in addition to double.
6340
-2011-08-02 Robert Dewar <dewar@adacore.com>
6342
- * sem_ch3.adb, sem_ch5.adb, sem_type.adb, switch-c.adb, switch-c.ads,
6343
- sem_prag.adb, sem_util.adb, sem_util.ads, sem_res.adb, warnsw.ads,
6344
- prepcomp.ads, cstand.adb, stand.ads, a-calfor.adb, s-stusta.adb:
6345
- Minor reformatting.
6347
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6349
- * sem_attr.adb: handle properly 'Result when it is a prefix of an
6350
- indexed component.
6352
-2011-08-02 Javier Miranda <miranda@adacore.com>
6354
- * einfo.ads, einfo.adb
6355
- (Original_Access_Type): Move this attribute to Node26 since there was
6356
- an undocumented use of Node21 in E_Access_Subprogram_Type entities
6357
- which causes conflicts and breaks the generation of the .NET compiler.
6358
- (Interface_Name): Add missing documentation on JGNAT only uses of
6361
-2011-08-02 Geert Bosch <bosch@adacore.com>
6363
- * cstand.adb (Back_End_Float_Types): Use Elist instead of Nlist
6364
- (Find_Back_End_Float_Type): Likewise
6365
- (Create_Back_End_Float_Types): Likewise
6366
- (Create_Float_Types): Likewise
6367
- (Register_Float_Type): Likewise
6368
- * sem_ch3.adb (Floating_Point_Type_Declaration): Use Elist instead of
6369
- Nlist and split out type selection in new local Find_Base_Type function.
6370
- * sem_prag.adb (Process_Import_Predefined_Type): Use Elist instead of
6372
- * stand.ads (Predefined_Float_Types): Use Elist instead of Nlist
6374
-2011-08-02 Robert Dewar <dewar@adacore.com>
6376
- * inline.adb: Minor code reorganization (put Get_Code_Unit_Entity in
6378
- * opt.ads: Minor comment change.
6379
- * sem_ch12.adb: Minor code reorganization.
6381
-2011-08-02 Gary Dismukes <dismukes@adacore.com>
6383
- * sem_ch3.adb (Complete_Private_Subtype): Don't append the private
6384
- subtype's list of rep items to the list on the full subtype in the case
6385
- where the lists are the same.
6387
-2011-08-02 Geert Bosch <bosch@adacore.com>
6389
- * switch-c.adb (Free): New deallocation procedure to avoid implicitly
6390
- using the one from System.Strings, which also deallocates all strings.
6392
-2011-08-02 Geert Bosch <bosch@adacore.com>
6394
- * gcc-interface/gigi.h, gcc-interface/misc.c (enumerate_modes): New
6396
- * gcc-interface/Make-lang.in: Update dependencies.
6398
-2011-08-02 Olivier Hainque <hainque@adacore.com>
6400
- * gcc-interface/trans.c (Subprogram_Body_to_gnu): Set the function
6403
-2011-08-02 Javier Miranda <miranda@adacore.com>
6405
- * sem_ch3.adb (Check_Anonymous_Access_Components): Create extra formals
6406
- associated with anonymous access to subprograms.
6408
-2011-08-02 Geert Bosch <bosch@adacore.com>
6411
- (Preprocessing_Symbol_Defs): Move from Prepcomp.Symbol_Definitions.
6412
- (Preprocessing_Symbol_Last): Move from Prepcomp.Last_Definition.
6413
- * prepcomp.adb (Symbol_Definitions, Last_Definition): Move to opt.ads
6414
- (Add_Symbol_Definition): Move to switch-c.adb
6415
- (Process_Command_Line_Symbol_Definitions): Adjust references to above.
6416
- * prepcomp.ads: Remove dependency on Ada.Unchecked_Deallocation.
6417
- (Add_Symbol_Definition): Move to switch-c.adb.
6418
- * sem_ch13.adb, sem_prag.adb: Add dependency on Warnsw.
6420
- (Set_Dot_Warning_Switch, Set_GNAT_Mode_Warnings, Set_Warning_Switch):
6421
- Move to warnsw.adb.
6422
- * sem_warn.ads (Warn_On_Record_Holes, Warn_On_Overridden_Size,
6423
- Set_Dot_Warning_Switch, Set_GNAT_Mode_Warnings, Set_Warning_Switch):
6424
- Move to warnsw.adb.
6425
- * switch-c.adb: Replace dependency on Prepcomp and Sem_Warn by Warnsw.
6426
- (Add_Symbol_Definition): Moved from Prepcomp.
6427
- * switch-c.ads: Update copyright notice. Use String_List instead of
6428
- Argument_List, removing dependency on System.OS_Lib.
6430
-2011-08-02 Yannick Moy <moy@adacore.com>
6432
- * sem_ch3.adb (Analyze_Object_Declaration): issue an error in formal
6433
- mode on initialization expression which does not respect SPARK
6435
- * sem_util.adb, sem_util.ads (Is_SPARK_Initialization_Expr): determines
6436
- if the tree referenced by its argument represents an initialization
6437
- expression in SPARK, suitable for initializing an object in an object
6440
-2011-08-02 Javier Miranda <miranda@adacore.com>
6442
- * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Link the
6443
- internally generated access to subprogram with its associated protected
6445
- * einfo.ads, einfo.adb (Original_Access_Type): New attribute.
6447
-2011-08-02 Geert Bosch <bosch@adacore.com>
6449
- * cstand.adb (Register_Float_Type): Print information about type to
6450
- register, if the Debug_Flag_Dot_B is set.
6451
- * debug.adb (Debug_Flag_Dot_B): Document d.b debug option.
6452
- * rtsfind.ads (RE_Max_Base_Digits): New run time entity.
6453
- * sem_ch3.adb (Floating_Point_Type_Declaration): Allow declarations
6454
- with a requested precision of more than Max_Digits digits and no more
6455
- than Max_Base_Digits digits, if a range specification is present and the
6456
- Predefined_Float_Types list has a suitable type to derive from.
6457
- * sem_ch3.adb (Rep_Item_Too_Early): Avoid generating error in the
6458
- case of type completion with pragma Import
6460
- (Process_Import_Predefined_Type): Processing to complete a type
6461
- with pragma Import. Currently supports floating point types only.
6462
- (Set_Convention_From_Pragma): Do nothing without underlying type.
6463
- (Process_Convention): Guard against absence of underlying type,
6464
- which may happen when importing incomplete types.
6465
- (Process_Import_Or_Interface): Handle case of importing predefined
6466
- types. Tweak error message.
6468
-2011-08-02 Eric Botcazou <ebotcazou@adacore.com>
6470
- * inline.adb (Add_Inlined_Body): Adjust check for library-level inlined
6471
- functions to previous change. Reorganize code slightly.
6473
-2011-08-02 Geert Bosch <bosch@adacore.com>
6475
- * back_end.ads (Register_Type_Proc): New call back procedure type for
6476
- allowing the back end to provide information about available types.
6477
- (Register_Back_End_Types): New procedure to register back end types.
6478
- * back_end.adb (Register_Back_End_Types): Call the back end to enumerate
6480
- * cstand.adb (Back_End_Float_Types): New list for floating point types
6481
- supported by the back end.
6482
- (Build_Float_Type): Add extra parameter for Float_Rep_Kind.
6483
- (Copy_Float_Type): New procedure to make new copies of predefined types.
6484
- (Register_Float_Type): New call back procedure to populate the BEFT list
6485
- (Find_Back_End_Float_Type): New procedure to find a BEFT by name
6486
- (Create_Back_End_Float_Types): New procedure to populate the BEFT list.
6487
- (Create_Float_Types): New procedure to create entities for floating
6488
- point types predefined in Standard, and put these and any remaining
6489
- BEFTs on the Predefined_Float_Types list.
6490
- * stand.ads (Predefined_Float_Types): New list for predefined floating
6491
- point types that do not have declarations in package Standard.
6493
-2011-08-02 Eric Botcazou <ebotcazou@adacore.com>
6495
- * inline.adb (Get_Code_Unit_Entity): New local function. Returns the
6496
- entity node for the unit containing the parameter.
6497
- (Add_Inlined_Body): Use it to find the unit containing the subprogram.
6498
- (Add_Inlined_Subprogram): Likewise.
6499
- * gcc-interface/Make-lang.in: Update dependencies.
6501
-2011-08-02 Thomas Quinot <quinot@adacore.com>
6503
- * s-stusta.adb (Print): Make sure Pos is always initialized to a
6506
-2011-08-02 Geert Bosch <bosch@adacore.com>
6508
- * a-calfor.adb (Image): Simplify, removing unnecessary uses of 'Image.
6510
-2011-08-02 Eric Botcazou <ebotcazou@adacore.com>
6512
- * sem_type.adb (Covers): Move trivial case to the top and reuse the
6513
- computed value of Base_Type.
6515
-2011-08-02 Yannick Moy <moy@adacore.com>
6517
- * restrict.adb (Check_Restriction): issue an error for any use of
6518
- class-wide, even if the No_Dispatch restriction is not set.
6519
- * sem_aggr.adb: Correct typos in comments and messages in formal mode
6520
- * sem_ch3.adb (Process_Full_View): issue an error in formal mode is,
6521
- when completing a private extension, the type named in the private part
6522
- is not the same as that named in the visible part.
6523
- * sem_res.adb (Resolve_Call): issue an error in formal mode on the use
6524
- of an inherited primitive operations of a tagged type or type extension
6525
- that returns the tagged type.
6526
- * sem_util.adb, sem_util.ads (Is_Inherited_Operation_For_Type): new
6527
- function which returns True for an implicit operation inherited by the
6528
- derived type declaration for the argument type.
6529
- (Is_SPARK_Object_Reference): move to appropriate place in alphabetic
6532
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6534
- * sem_ch5.adb (Pre_Analyze_Range): new procedure extracted from
6535
- Process_Bounds, to perform analysis with expansion of a range or an
6536
- expression that is the iteration scheme for a loop.
6537
- (Analyze_Iterator_Specification): If domain of iteration is given by a
6538
- function call with a controlled result, as is the case if call returns
6539
- a predefined container, ensure that finalization actions are properly
6541
- * par-ch3.adb: accept Ada2012 iterator form in P_Discrete_Range.
6543
-2011-08-02 Javier Miranda <miranda@adacore.com>
6545
- * sem_ch5.adb (Analyze_Iteration_Scheme): Fix typo.
6546
- * gcc-interface/Make-lang.in: Update dependencies.
6548
-2011-08-02 Javier Miranda <miranda@adacore.com>
6550
- * sem_util.ads, sem_util.adb (Is_Variable): Add a new formal to
6551
- determine if the analysis is performed using N or Original_Node (N).
6552
- * exp_util.adb (Side_Effect_Free): Code cleanup since the new
6553
- functionality of routine Is_Variable avoids code duplication.
6554
- * checks.adb (Determine_Range): Handle temporaries generated by
6555
- Remove_Side_Effects.
6557
-2011-08-02 Javier Miranda <miranda@adacore.com>
6559
- * exp_ch4.adb (Expand_N_Quantified_Expression): Force reanalysis and
6560
- expansion of the condition. Required since the previous analysis was
6561
- done with expansion disabled (see Resolve_Quantified_Expression) and
6562
- hence checks were not inserted and record comparisons have not been
6565
-2011-08-02 Ed Falis <falis@adacore.com>
6567
- * s-taprop-vxworks.adb, s-intman-vxworks.adb, s-intman-vxworks.ads:
6570
-2011-08-02 Bob Duff <duff@adacore.com>
6572
- * opt.ads: Minor comment fix.
6574
-2011-08-02 Bob Duff <duff@adacore.com>
6576
- * sem_ch12.adb (Analyze_Package_Instantiation,
6577
- Analyze_Subprogram_Instantiation): Turn off style checking while
6578
- analyzing an instance. Whatever style checks that apply to the generic
6579
- unit should apply, so it makes no sense to apply them in an instance.
6580
- This was causing trouble when compiling an instance of a runtime
6581
- unit that violates the -gnatyO switch.
6582
- * stylesw.adb (Set_Style_Check_Options): "when 'O' =>" was missing from
6583
- one of the two case statements, causing spurious errors.
6585
-2011-08-02 Robert Dewar <dewar@adacore.com>
6587
- * uname.adb: Minor reformatting.
6588
- * gnatcmd.adb: Minor reformatting.
6589
- * exp_attr.adb: Minor reformatting.
6591
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6593
- * exp_ch5.adb (Expand_N_Assignment_Statement): under restriction
6594
- No_Dispatching_Calls, do not look for the Assign primitive, because
6595
- predefined primitives are not created in this case.
6597
-2011-08-02 Bob Duff <duff@adacore.com>
6599
- * stylesw.ads: Minor comment fixes.
6601
-2011-08-02 Robert Dewar <dewar@adacore.com>
6603
- * freeze.adb (Add_To_Result): New procedure.
6605
-2011-08-02 Jose Ruiz <ruiz@adacore.com>
6607
- * exp_attr.adb (Find_Stream_Subprogram): When using a configurable run
6608
- time, if the specific run-time routines for handling streams of strings
6609
- are not available, use the default mechanism.
6611
-2011-08-02 Arnaud Charlet <charlet@adacore.com>
6613
- * s-regpat.ads: Fix typo.
6615
-2011-08-02 Vincent Celier <celier@adacore.com>
6617
- * prj-conf.adb (Get_Or_Create_Configuration_File): If On_Load_Config is
6618
- not null, call it to create the in memory config project file without
6619
- parsing an existing default config project file.
6621
-2011-08-02 Eric Botcazou <ebotcazou@adacore.com>
6623
- * atree.adb (Allocate_Initialize_Node): Remove useless temporaries.
6625
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6627
- * sem_elim.adb: an abstract subprogram does not need an eliminate
6628
- pragma for its descendant to be eliminable.
6630
-2011-08-02 Ed Falis <falis@adacore.com>
6632
- * init.c: revert to handling before previous checkin for VxWorks
6633
- * s-intman-vxworks.adb: delete unnecessary declarations related to
6634
- using Ada interrupt facilities for handling signals.
6635
- Delete Initialize_Interrupts. Use __gnat_install_handler instead.
6636
- * s-intman-vxworks.ads: Import __gnat_install_handler as
6637
- Initialize_Interrupts.
6638
- * s-taprop-vxworks.adb: Delete Signal_Mask.
6639
- (Abort_Handler): change construction of mask to unblock exception
6642
-2011-08-02 Jerome Guitton <guitton@adacore.com>
6644
- * a-except-2005.adb (Raise_From_Signal_Handler): Call
6645
- Debug_Raise_Exception before propagation starts.
6647
-2011-08-02 Eric Botcazou <ebotcazou@adacore.com>
6649
- * exp_ch6.adb (Expand_Call): Guard restriction checks with a call
6650
- to Restriction_Check_Required.
6651
- * sem_ch3.adb (Analyze_Object_Declaration): Likewise.
6652
- * sem_res.adb (Resolve_Call): Likewise.
6653
- * sem_attr.adb (Check_Stream_Attribute): Likewise.
6655
-2011-08-02 Bob Duff <duff@adacore.com>
6657
- * stylesw.ads: Update comment.
6658
- * style.adb: Minor: Use Error_Msg_NE instead of Error_Msg_N.
6659
- * errout.ads: Remove obsolete comment.
6661
-2011-08-02 Javier Miranda <miranda@adacore.com>
6663
- * einfo.ads, einfo.adb (Is_Safe_To_Reevaluate): new function.
6664
- (Set_Is_Safe_To_Reevaluate): new procedure.
6665
- * sem_ch5.adb (Analyze_Assignment): Add one assertion to ensure that no
6666
- assignment is allowed on safe-to-reevaluate variables.
6667
- (Analyze_Iteration_Schine.Process_Bounds.One_Bound): Decorate the
6668
- temporary created to remove side effects in expressions that use
6669
- the secondary stack as safe-to-reevaluate.
6670
- * exp_util.adb (Side_Effect_Free): Add missing code to handle well
6671
- variables that are not true constants.
6673
-2011-08-02 Robert Dewar <dewar@adacore.com>
6675
- * sem_ch5.adb, sem_ch7.adb, einfo.ads, sem_util.adb, sem_util.ads,
6676
- sem_res.adb, sem_ch6.adb: Minor reformatting.
6678
-2011-08-02 Jerome Guitton <guitton@adacore.com>
6680
- * a-except-2005.adb (Raise_Current_Excep): Remove obsolete dead code.
6682
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6684
- * sem_ch6.adb (New_Overloaded_Entity, Check_Overriding_Indicator): Do
6685
- not set Overridden_Operation if subprogram is an initialization
6688
-2011-08-02 Yannick Moy <moy@adacore.com>
6690
- * par-ch6.adb: Correct obsolete name in comments
6691
- * restrict.adb, restrict.ads (Check_Formal_Restriction): new function
6692
- which takes two message arguments (existing function takes one), with
6693
- second message used for continuation.
6694
- * sem_ch5.adb (Analyze_Block_Statement): in formal mode, only reject
6695
- block statements that originate from a source block statement, not
6696
- generated block statements
6697
- * sem_ch6.adb (Analyze_Function_Call): rename L into Actuals, for
6698
- symmetry with procedure case
6699
- * sem_ch7.adb (Check_One_Tagged_Type_Or_Extension_At_Most): new
6700
- function to issue an error in formal mode if a package specification
6701
- contains more than one tagged type or type extension.
6702
- * sem_res.adb (Resolve_Actuals): in formal mode, check that actual
6703
- parameters matching formals of tagged types are objects (or ancestor
6704
- type conversions of objects), not general expressions. Issue an error
6705
- on view conversions that are not involving ancestor conversion of an
6707
- (Resolve_Type_Conversion): in formal mode, issue an error on the
6708
- operand of an ancestor type conversion which is not an object
6709
- * sem_util.adb, sem_util.ads (Find_Actual): extend the behavior of the
6710
- procedure so that it works also for actuals of function calls
6711
- (Is_Actual_Tagged_Parameter): new function which determines if its
6712
- argument is an actual parameter of a formal of tagged type in a
6714
- (Is_SPARK_Object_Reference): new function which determines if the tree
6715
- referenced by its argument represents an object in SPARK
6717
-2011-08-02 Robert Dewar <dewar@adacore.com>
6719
- * sem_ch3.adb: Minor reformatting
6720
- Minor comment addition
6721
- Minor error msg text change
6723
-2011-08-02 Javier Miranda <miranda@adacore.com>
6725
- * sem_ch5.adb (Analyze_Iteration_Scheme.Uses_Secondary_Stack): New
6726
- function. Used to be more precise when we generate a variable plus one
6727
- assignment to remove side effects in the evaluation of the Bound
6729
- (Analyze_Iteration_Scheme): Clean attribute analyzed in all the nodes
6730
- of the bound expression to force its re-analysis and thus expand the
6731
- associated transient scope (if required). Code cleanup replacing the
6732
- previous code that declared the constant entity by an invocation to
6733
- routine Force_Evaluation which centralizes this work in the frontend.
6735
-2011-08-02 Robert Dewar <dewar@adacore.com>
6737
- * einfo.adb (Is_Base_Type): Improve efficiency by using a flag table
6738
- (Base_Type): Now uses improved Is_Base_Type function
6739
- * einfo.ads (Base_Type): Inline this function
6741
-2011-08-02 Robert Dewar <dewar@adacore.com>
6743
- * sem_prag.adb (Analyze_Pragma): Defend against infinite recursion
6744
- (Analyze_Aspect_Specifications): Fix Sloc values for constructed pragmas
6746
-2011-08-02 Arnaud Charlet <charlet@adacore.com>
6748
- * gcc-interface/Make-lang.in: Update dependencies.
6749
- * gcc-interface/Makefile.in: Use s-inmapop-vxworks.adb for all VxWorks
6752
-2011-08-02 Yannick Moy <moy@adacore.com>
6754
- * par-ch3.adb (P_Delta_Constraint): issue an error in formal mode on
6755
- non-simple expression used in delta constraint
6756
- (P_Index_Or_Discriminant_Constraint): issue an error in formal mode on
6757
- index constraint which is not a subtype mark
6758
- * par.adb: With and use Restrict
6759
- * sem_ch3.adb (Analyze_Component_Declaration): issue an error in formal
6760
- mode on component type which is not a subtype mark and default
6761
- expression on component
6762
- (Analyze_Subtype_Declaration): issue an error in formal mode on subtype
6763
- of string which does not have a lower index bound equal to 1
6764
- (Array_Type_Declaration): issue an error in formal mode on index or
6765
- component type which is not a subtype mark, and on aliased keyword on
6767
- (Derived_Type_Declaration): issue an error in formal mode on interface,
6768
- limited or abstract type
6769
- (Record_Type_Declaration): issue an error in formal mode on interface
6770
- (Record_Type_Definition): issue an error in formal mode on tagged types
6771
- and type extensions not declared in the specification of a library unit
6772
- package; on null non-tagged record; on variant part
6774
-2011-08-02 Vincent Celier <celier@adacore.com>
6776
- * prj-nmsc.adb (Check_Library_Attributes): Do not report Library_Dir
6777
- not declared for qualified library project when Library_Name is not
6778
- declared, but Library_Dir is.
6780
-2011-08-02 Robert Dewar <dewar@adacore.com>
6782
- * sem_ch13.adb (Analyze_Aspect_Specification): Fix slocs on generated
6783
- pragmas (affects aspects [Component_]Default_Value
6784
- (Check_Aspect_At_Freeze_Point): For Component_Default_Value, use
6785
- component type for the resolution
6787
-2011-08-02 Eric Botcazou <ebotcazou@adacore.com>
6789
- * einfo.adb (Base_Type): Tune implementation for speed.
6791
-2011-08-02 Robert Dewar <dewar@adacore.com>
6793
- * freeze.adb: Minor reformatting.
6795
-2011-08-02 Thomas Quinot <quinot@adacore.com>
6797
- * scos.ads: Update comments.
6799
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6801
- * sem_ch3.adb (Build_Derived_Type): Inherit the convention from the
6802
- base type, because the parent may be a subtype of a private type whose
6803
- convention is established in a private part.
6805
-2011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
6807
- * exp_ch6.adb (Expand_N_Extended_Return_Statement): Wrap the return
6808
- statement in a block when the expansion of the return expression has
6809
- created a finalization chain.
6810
- * freeze.adb (Freeze_Expression): Alphabetize all choices associated
6811
- with the parent node.
6812
- Add N_Extended_Return_Statement to handle the case where a transient
6813
- object declaration appears in the Return_Object_Declarations list of
6814
- an extended return statement.
6816
-2011-08-02 Matthew Gingell <gingell@adacore.com>
6818
- * adaint.c (__gnat_is_symbolic_link_attr): Supress warning on possibly
6819
- unused parameter 'name'.
6821
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6823
- * sem_elim.adb (Set_Eliminated): If the overridden operation is an
6824
- inherited operation, check whether its alias, which is the source
6825
- operastion that it renames, has been marked eliminated.
6827
-2011-08-02 Javier Miranda <miranda@adacore.com>
6829
- * exp_util.adb (Safe_Prefixed_Reference): Do not consider safe an
6830
- in-mode parameter whose type is an access type since it can be used to
6831
- modify its designated object. Enforce code that handles as safe an
6832
- access type that is not access-to-constant but it is the result of a
6833
- previous removal of side-effects.
6834
- (Remove_Side_Effects): Minor code reorganization of cases which require
6835
- no action. Done to incorporate documentation on new cases uncovered
6836
- working in this ticket: no action needed if this routine was invoked
6837
- too early and the nodes are not yet decorated.
6838
- * sem_res.adb (Resolve_Slice): Minor code cleanup replacling two calls
6839
- to routine Remove_Side_Effects by calls to Force_Evaluation since they
6840
- were issued with actuals that are implicitly provided by
6843
-2011-08-02 Robert Dewar <dewar@adacore.com>
6845
- * sem_ch3.adb, sem_res.adb: Minor reformatting.
6847
-2011-08-02 Yannick Moy <moy@adacore.com>
6849
- * sem_attr.adb (Check_Formal_Restriction_On_Attribute): new procedure
6850
- to issue an error in formal mode on attribute not supported in this mode
6851
- (Analyze_Attribute): issue errors on standard attributes not supported
6853
- * sem_ch3.adb (Modular_Type_Declaration): remove obsolete part of
6854
- comment, and issue error in formal mode on modulus which is not a power
6856
- (Process_Range_Expr_In_Decl): issue error in formal mode on non-static
6858
- * sem_ch8.adb (Find_Type): issue error in formal mode on 'Base in
6860
- * sem_res.adb (Resolve_Unary_Op): issue error in formal mode on unary
6861
- operator on modular type (except 'not').
6863
-2011-08-02 Robert Dewar <dewar@adacore.com>
6865
- * gnat_rm.texi: Minor reformatting.
6867
-2011-08-02 Arnaud Charlet <charlet@adacore.com>
6869
- * s-osinte-linux.ads: Minor comment update and reformatting.
6870
- * i-cexten.ads: Make this unit pure, as for its parent.
6871
- Will allow its usage in more contexts if needed.
6873
-2011-08-02 Robert Dewar <dewar@adacore.com>
6875
- * s-utf_32.ads: Minor comment fix.
6877
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6879
- * sem_res.adb (Resolve_Actuals): if the subprogram is a primitive
6880
- operation of a tagged synchronized type, handle the case where the
6881
- controlling argument is overloaded.
6883
-2011-08-02 Yannick Moy <moy@adacore.com>
6885
- * gnat_rm.texi, opt.ads, sem_prag.adb, snames.ads-tmpl:
6886
- Replace pragma SPARK_95 with pragma Restrictions (SPARK)
6887
- * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): set
6888
- SPARK mode and formal verification mode on processing SPARK restriction
6889
- * s-rident.ads (Restriction_Id): add SPARK restriction in those not
6890
- requiring consistency checking.
6892
-2011-08-02 Robert Dewar <dewar@adacore.com>
6894
- * sem_res.adb: Minor reformatting.
6896
-2011-08-02 Robert Dewar <dewar@adacore.com>
6898
- * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
6899
- a-cforse.ads: Remove unneeded with of Ada.Containers
6900
- Remove commented out pragma Inline's
6901
- Move specifications of new subprograms to the actual specs
6903
-2011-08-02 Yannick Moy <moy@adacore.com>
6905
- * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
6906
- a-cforse.ads: Update comments.
6908
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6910
- * sem_attr.adb: add attribute name when 'Result has the wrong prefix.
6912
-2011-08-02 Robert Dewar <dewar@adacore.com>
6914
- * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
6915
- a-cforse.ads, a-cofove.ads: Minor reformatting.
6917
-2011-08-02 Claire Dross <dross@adacore.com>
6919
- * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads,
6920
- a-cofove.ads: Add comments.
6922
-2011-08-02 Yannick Moy <moy@adacore.com>
6924
- * gnat_rm.texi: Document formal containers.
6926
-2011-08-02 Emmanuel Briot <briot@adacore.com>
6928
- * g-comlin.adb (Goto_Section, Getopt): fix handling of "*" when there
6929
- are empty sections.
6931
-2011-08-02 Robert Dewar <dewar@adacore.com>
6933
- * mlib-prj.adb, restrict.ads, sem_aggr.adb, sem_ch12.adb: Minor
6936
-2011-08-02 Robert Dewar <dewar@adacore.com>
6938
- * aspects.adb: New aspects Default_Value and Default_Component_Value
6939
- New format of Aspect_Names table checks for omitted entries
6940
- * aspects.ads: Remove mention of Aspect_Cancel and add documentation on
6941
- handling of boolean aspects for derived types.
6942
- New aspects Default_Value and Default_Component_Value
6943
- New format of Aspect_Names table checks for omitted entries
6944
- * einfo.ads, einfo.adb (Has_Default_Component_Value): New flag
6945
- (Has_Default_Value): New flag
6946
- (Has_Default_Component_Value): New flag
6947
- (Has_Default_Value): New flag
6948
- * par-ch13.adb (P_Aspect_Specifications): New format of Aspect_Names
6950
- * par-prag.adb: New pragmas Default_Value and Default_Component_Value
6951
- * sem_ch13.adb (Analyze_Aspect_Specifications): New aspects
6952
- Default_Value and Default_Component_Value
6953
- * sem_prag.adb: New pragmas Default_Value and Default_Component_Value
6954
- New aspects Default_Value and Default_Component_Value
6955
- * snames.ads-tmpl: New pragmas Default_Value and Default_Component_Value
6956
- * sprint.adb: Print N_Aspect_Specification node when called from gdb
6958
-2011-08-02 Vincent Celier <celier@adacore.com>
6960
- * prj-nmsc.adb (Check_Library_Attributes): For virtual library project,
6961
- inherit library kind.
6963
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
6965
- * sem_res.adb: Add guards in calls to Matching_Static_Array_Bounds.
6966
- Minor reformatting.
6968
-2011-08-02 Robert Dewar <dewar@adacore.com>
6970
- * i-cstrin.ads: Updates to make Interfaces.C.Strings match RM
6972
-2011-08-02 Yannick Moy <moy@adacore.com>
6974
- * sem_aggr.adb (Resolve_Aggregate): Fix thinko.
6976
-2011-08-02 Robert Dewar <dewar@adacore.com>
6978
- * impunit.adb: Add comment.
6980
-2011-08-02 Yannick Moy <moy@adacore.com>
6982
- * sem_aggr.adb (Check_Qualified_Aggregate): new procedure which checks
6983
- qualification of aggregates in formal mode
6984
- (Is_Top_Level_Aggregate): returns True for an aggregate not contained in
6986
- (Resolve_Aggregate): complete the test that an aggregate is adequately
6987
- qualified in formal mode
6989
-2011-08-02 Pascal Obry <obry@adacore.com>
6991
- * make.adb, bindgen.adb, gnatbind.adb: Minor reformatting.
6992
- * mlib-prj.adb: Supress warning when compiling binder generated file.
6993
- (Build_Library): Supress all warnings when compiling the binder
6996
-2011-08-02 Yannick Moy <moy@adacore.com>
6998
- * errout.adb, errout.ads (Check_Formal_Restriction): move procedure
7000
- * restrict.adb, restrict.ads (Check_Formal_Restriction): ...to here
7001
- * sem_aggr.adb, sem_ch5.adb, sem_util.adb:
7002
- Add with/use clauses to make Check_Formal_Restriction visible
7004
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
7006
- * sem_ch12.adb (Check_Generic_Actuals): handle properly actual
7007
- in-parameters when type of the generic formal is private in the generic
7008
- spec and non-private in the body.
7010
-2011-08-02 Claire Dross <dross@adacore.com>
7012
- * a-cfdlli.adb, a-cfdlli.ads, a-cfhase.adb, a-cfhase.ads, a-cfhama.adb,
7013
- a-cfhama.ads, a-cforse.adb, a-cforse.ads, a-cforma.adb, a-cforma.ads,
7014
- a-cofove.adb, a-cofove.ads: New files implementing formal containers.
7015
- * impunit.adb, Makefile.rtl: Take new files into account.
7017
-2011-08-02 Robert Dewar <dewar@adacore.com>
7019
- * sem_aggr.adb, sem_ch3.adb, sem_ch5.adb, make.adb, sem_res.adb,
7020
- sem_attr.adb, sem_ch6.adb, sem_ch8.adb: Minor reformatting.
7022
-2011-08-02 Yannick Moy <moy@adacore.com>
7024
- * sem_aggr.adb (Resolve_Aggregate): disable incorrectly placed check in
7026
- * sem_util.adb (Matching_Static_Array_Bounds): proper detection of
7027
- matching static array bounds, taking into account the special case of
7029
- * sem_ch3.adb: Typo in comment.
7031
-2011-08-02 Yannick Moy <moy@adacore.com>
7033
- * errout.adb, errout.ads (Check_Formal_Restriction): new procedure
7034
- which issues an error in formal mode if its argument node is originally
7036
- * sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type
7037
- has a discriminant specification so that it does not include the case
7039
- (Derived_Type_Declaration): move here the test that a derived type has a
7040
- discriminant specification
7041
- * sem_aggr.adb (Resolve_Record_Aggregate): test the presence of the
7042
- first element of a component association before accessing its choices
7043
- (presence of component association is not enough)
7044
- * exp_ch6.adb (Expand_N_Subprogram_Declaration): test if a subprogram
7045
- declaration is a library item before accessing the next element in a
7046
- list, as library items are not member of lists
7047
- * sem_attr.adb, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
7048
- sem_ch8.adb, sem_ch9.adb, sem_res.adb, sem_util.adb: use
7049
- Check_Formal_Restriction whenever possible.
7051
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
7053
- * sem_ch3.adb (Find_Type_Of_Object): In ASIS mode, create an itype
7054
- reference when needed.
7056
-2011-08-02 Bob Duff <duff@adacore.com>
7058
- * gnat_ugn.texi: Fix typo.
7060
-2011-08-02 Vincent Celier <celier@adacore.com>
7062
- * make.adb (Gnatmake): Use MLib.Tgt.Archive_Ext as the extension of
7063
- archive file name. Do not use the full path name of archives for Open
7066
-2011-08-02 Robert Dewar <dewar@adacore.com>
7068
- * sem_ch12.adb, sem_ch11.adb: New calling sequence for
7069
- Analyze_Aspect_Specifications
7071
- (Analyze_Aspect_Specifications): New handling for boolean aspects
7072
- * sem_ch13.ads (Analyze_Aspect_Specifications): New calling sequence
7073
- * sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_ch9.adb: New calling
7074
- sequence for Analyze_Aspect_Specifications
7075
- * sem_prag.adb (Analyze_Pragma): Remove use of Aspect_Cancel entirely
7076
- * sinfo.ads, sinfo.adb (Aspect_Cancel): Remove, no longer used
7078
-2011-08-02 Robert Dewar <dewar@adacore.com>
7080
- * freeze.adb (Freeze_Entity): Remove handling of delayed boolean
7081
- aspects, since these no longer exist.
7083
-2011-08-02 Robert Dewar <dewar@adacore.com>
7085
- * par-ch13.adb (Aspect_Specifications_Present): Always return false on
7086
- semicolon, do not try to see if there are aspects following it.
7087
- * par-ch3.adb (P_Declarative_Items): Better message for unexpected
7090
-2011-08-02 Robert Dewar <dewar@adacore.com>
7092
- * sem_ch8.adb, aspects.ads: Minor reformatting.
7094
-2011-08-02 Eric Botcazou <ebotcazou@adacore.com>
7096
- * sem_ch13.ads (Analyze_Aspect_Specification): Add pragma Inline.
7097
- * sem_ch13.adb (Analyze_Non_Null_Aspect_Specifications): New procedure
7099
- (Analyze_Aspect_Specifications): ...here. Call above procedure.
7101
-2011-08-02 Yannick Moy <moy@adacore.com>
7103
- * exp_ch6.adb (Expand_N_Subprogram_Declaration): issue error in formal
7104
- mode on subprogram declaration outside of package specification, unless
7105
- it is followed by a pragma Import
7106
- * sem_ch3.adb (Access_Definition, Access_Subprogram_Declaration,
7107
- Access_Type_Declaration): issue error in formal mode on access type
7108
- (Analyze_Incomplete_Type_Decl): issue error in formal mode on
7110
- (Analyze_Object_Declaration): issue error in formal mode on object
7111
- declaration which does not respect SPARK restrictions
7112
- (Analyze_Subtype_Declaration): issue error in formal mode on subtype
7113
- declaration which does not respect SPARK restrictions
7114
- (Constrain_Decimal, Constrain_Float, Constrain_Ordinary_Fixed): issue
7115
- error in formal mode on digits or delta constraint
7116
- (Decimal_Fixed_Point_Type_Declaration): issue error in formal mode on
7117
- decimal fixed point type
7118
- (Derived_Type_Declaration): issue error in formal mode on derived type
7119
- other than type extensions of tagged record types
7120
- * sem_ch6.adb (Process_Formals): remove check in formal mode, redundant
7121
- with check on access definition
7122
- * sem_ch9.adb (Analyze_Protected_Definition): issue error in formal
7123
- mode on protected definition.
7124
- (Analyze_Task_Definition): issue error in formal mode on task definition
7126
-2011-08-02 Robert Dewar <dewar@adacore.com>
7128
- * make.adb, sem_ch8.adb, s-inmaop-vxworks.adb: Minor reformatting.
7130
-2011-08-02 Javier Miranda <miranda@adacore.com>
7132
- * sem_ch6.adb (Can_Override_Operator): New function.
7133
- (Verify_Overriding_Indicator): Add missing code to check overriding
7134
- indicator in operators. Fixes regression.
7135
- (Check_Overriding_Indicator): Minor reformating after replacing the
7136
- code that evaluates if the subprogram can override an operator by
7137
- invocations to the above new function.
7139
- (Write_Field26_Name): Add missing code to ensure that, following
7140
- the documentation in einfo.ads, this field is not shown as attribute
7141
- "Static_Initialization" on non-dispatching functions.
7143
-2011-08-02 Jose Ruiz <ruiz@adacore.com>
7145
- * sem_res.adb (Resolve_Call): A call to
7146
- Ada.Real_Time.Timing_Events.Set_Handler violates restriction
7147
- No_Relative_Delay (AI-0211) only when it sets a relative timing event,
7148
- i.e., when the second parameter is of type Time_Span.
7150
-2011-08-02 Vincent Celier <celier@adacore.com>
7152
- * make.adb (Gnatmake): use <library dir>/lib<library name>.a to link
7153
- with an archive instead of -L<library dir> -l<library name>.
7155
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
7157
- * sem_ch8.adb (Analyze_Use_Type): If the clause is being re-analyzed,
7158
- mark the base types In_Use in addition to making the operations
7161
-2011-08-02 Ed Falis <falis@adacore.com>
7163
- * init.c: add and setup __gnat_signal_mask for the exception signals
7164
- * s-inmaop-vxworks.adb: new file.
7165
- * s-intman-vxworks.adb: remove unnecessary initializations and
7166
- simplify remaining
7167
- * s-intman-vxworks.ads: remove unnecessary variable
7168
- * s-taprop-vxworks.adb: simplify signal initialization
7170
-2011-08-02 Robert Dewar <dewar@adacore.com>
7172
- * sem_ch8.adb: Minor code reorganization, comment updates.
7174
-2011-08-02 Robert Dewar <dewar@adacore.com>
7176
- * sem_res.adb (Matching_Static_Array_Bounds): Moved to Sem_Util
7177
- * sem_util.ads, sem_util.adb (Matching_Static_Array_Bounds): Moved
7178
- here from Sem_Res.
7179
- (Matching_Static_Array_Bounds): Use Is_Ok_Static_Expression
7180
- (Matching_Static_Array_Bounds): Moved here from Sem_Res
7182
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
7184
- * atree.h, atree.ads, atree.adb: New subprograms to manipulate Elist5.
7185
- * par_ch8.adb (P_Use_Type): initialize Used_Operations for node.
7186
- * sinfo.ads, sinfo.adb (Used_Operations): new attribute of
7187
- use_type_clauses, to handle more efficiently use_type and use_all_type
7189
- * sem_ch8.adb: Rewrite Use_One_Type and End_Use_Type to handle the
7190
- Ada2012 Use_All_Type clause.
7191
- (Use_Class_Wide_Operations): new procedure.
7193
-2011-08-02 Robert Dewar <dewar@adacore.com>
7195
- * exp_util.adb, par-ch10.adb, par-ch6.adb, sem.adb, sem_ch6.adb,
7196
- sem_ch6.ads, sinfo.adb, sinfo.ads, sprint.adb: Change parameterized
7197
- expression to expression function.
7199
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
7201
- * sem_ch4.adb: transform simple Ada2012 membership into equality only
7202
- if types are compatible.
7204
-2011-08-02 Yannick Moy <moy@adacore.com>
7206
- * sem_res.adb (Matching_Static_Array_Bounds): new function which
7207
- returns True if its argument array types have same dimension and same
7208
- static bounds at each index.
7209
- (Resolve_Actuals): issue an error in formal mode on actuals passed as
7210
- OUT or IN OUT paramaters which are not view conversions in SPARK.
7211
- (Resolve_Arithmetic_Op): issue an error in formal mode on
7212
- multiplication or division with operands of fixed point types which are
7213
- not qualified or explicitly converted.
7214
- (Resolve_Comparison_Op): issue an error in formal mode on comparisons of
7215
- Boolean or array type (except String) operands.
7216
- (Resolve_Equality_Op): issue an error in formal mode on equality
7217
- operators for array types other than String with non-matching static
7219
- (Resolve_Logical_Op): issue an error in formal mode on logical operators
7220
- for array types with non-matching static bounds. Factorize the code in
7221
- Matching_Static_Array_Bounds.
7222
- (Resolve_Qualified_Expression): issue an error in formal mode on
7223
- qualified expressions for array types with non-matching static bounds.
7224
- (Resolve_Type_Conversion): issue an error in formal mode on type
7225
- conversion for array types with non-matching static bounds
7227
-2011-08-02 Robert Dewar <dewar@adacore.com>
7229
- * par-ch10.adb: Minor code reorganization (use Nkind_In).
7231
-2011-08-02 Ed Schonberg <schonberg@adacore.com>
7233
- * par-ch9.adb: save location of entry for proper error message.
7235
-2011-08-02 Javier Miranda <miranda@adacore.com>
7237
- * sem_type.ads, sem_type.adb (Is_Ancestor): Addition of a new formal
7238
- (Use_Full_View) which permits this routine to climb through the
7239
- ancestors using the full-view of private parents.
7240
- * sem_util.adb (Collect_Interfaces_Info, Implements_Interface): Set
7241
- Use_Full_View to true in calls to Is_Ancestor.
7242
- * sem_disp.adb (Override_Dispatching_Operation): Set Use_Full_View to
7243
- true in call to Is_Ancestor.
7244
- * exp_ch3.adb (Build_Offset_To_Top_Functions, Initialize_Tag): Set
7245
- Use_Full_View to true in call to Is_Ancestor.
7246
- * exp_ch7.adb (Controller_Component): Set Use_Full_View to true in
7247
- call to Is_Ancestor.
7248
- * exp_ch4.adb (Expand_N_Type_Conversion, Tagged_Membership): Set
7249
- Use_Full_View to true in calls to Is_Ancestor.
7250
- * exp_disp.adb (Expand_Interface_Actuals, Make_Secondary_DT, Make_DT,
7251
- Make_Select_Specific_Data_Table, Register_Primitive,
7252
- Set_All_DT_Position): Set Use_Full_View to true in calls to Is_Ancestor.
7253
- * exp_intr.adb (Expand_Dispatching_Constructor_Call): Set Use_Full_View
7254
- to true in call to Is_Ancestor.
7255
- * exp_util.adb (Find_Interface_ADT, Find_Interface_Tag): Set
7256
- Use_Full_View to true in calls to Is_Ancestor.
7258
- (Write_Call_Info): Set Use_Full_View to true in call to Is_Ancestor.
7259
- (Write_Type_Info): Set Use_Full_View to true in call to Is_Ancestor.
7261
-2011-08-02 Robert Dewar <dewar@adacore.com>
7263
- * gnat_rm.texi: Minor reformatting.
7264
- * sem_prag.adb: Minor reformatting.
7266
-2011-08-02 Tristan Gingold <gingold@adacore.com>
7268
- * vms_data.ads: Add VMS qualifier for -gnateP.
7270
-2011-08-02 Robert Dewar <dewar@adacore.com>
7272
- * par-ch13.adb (P_Aspect_Specification): New meaning of Decl = Empty
7273
- * par-ch7.adb (P_Package): Proper placement of aspects for package
7274
- decl/instantiation.
7275
- * par-endh.adb (Check_End): Ad Is_Sloc parameter
7276
- (End_Statements): Add Is_Sloc parameterr
7277
- * par.adb (P_Aspect_Specification): New meaning of Decl = Empty
7278
- (Check_End): Ad Is_Sloc parameter
7279
- (End_Statements): Add Is_Sloc parameterr
7281
-2011-08-02 Vincent Celier <celier@adacore.com>
7283
- * ug_words: Add VMS qualifier equivalent to -gnateP:
7284
- /SYMBOL_PREPROCESSING.
7286
-2011-08-02 Jose Ruiz <ruiz@adacore.com>
7288
- * gnat-style.texi: For hexadecimal numeric literals the typical
7289
- grouping of digits is 4 to represent 2 bytes.
7290
- A procedure spec which is split into several lines is indented two
7293
-2011-08-02 Yannick Moy <moy@adacore.com>
7295
- * exp_aggr.adb (Is_Others_Aggregate): move function to other unit.
7296
- * sem_aggr.adb, sem_aggr.ads (Is_Others_Aggregate): move function here
7297
- (Resolve_Aggregate): issue errors in formal modes when aggregate is not
7298
- properly qualified
7299
- (Resolve_Array_Aggregate): issue errors in formal modes on non-static
7300
- choice in array aggregate
7301
- (Resolve_Extension_Aggregate): issue errors in formal modes on subtype
7303
- (Resolve_Record_Aggregate): issue errors in formal modes on mixed
7304
- positional and named aggregate for record, or others in record
7305
- aggregate, or multiple choice in record aggregate
7306
- * sem_res.adb (Resolve_Logical_Op): issue errors in formal mode when
7307
- array operands to logical operations AND, OR and XOR do not have the
7308
- same static lower and higher bounds
7309
- * sem_ch5.adb, sinfo.ads: Correct typos in comments
7311
-2011-08-01 Robert Dewar <dewar@adacore.com>
7313
- * sem_util.ads, sem_util.adb, sem_ch6.adb (Last_Source_Statement):
7314
- Replaces Last_Source_Node_In_Sequence.
7315
- * err_vars.ads (Error_Msg_Lang): 16 is OK, don't need 4K
7316
- * errout.adb (Set_Error_Msg_Lang): Takes arg with no parens, but stores
7317
- parens and blank in string (this was inconsistently implemented).
7319
- (Set_Error_Msg_Lang): Takes arg with no parens, but stores parens and
7320
- blank in string (this was inconsistently implemented).
7322
- (Set_Global_Switches): Set formal mode switches appropriately
7323
- * opt.ads, opt.adb: Formal mode is now global switches, more consistent
7325
- (Analyze_Pragma, case SPARK_95): Set opt switches appropriately and
7326
- call Set_Error_Msg_Lang to set "spark" as language name.
7327
- * par.adb: Remove unnecessary call to set formal language for errout
7328
- * sem_prag.adb (P_Pragma, case SPARK_95): Set opt switches
7329
- appropriately and call Set_Error_Msg_Lang to set "spark" as language
7331
- * sem_ch4.adb (Analyze_Concatenation_Operand): remove procedure and
7332
- calls to it, moved after resolution so that types are known
7333
- * sem_res.adb (Resolve_Op_Concat): issue an error in formal mode if
7334
- result of concatenation is not of type String
7335
- (Resolve_Op_Concat_Arg): issue an error in formal mode if an operand of
7336
- concatenation is not properly restricted
7337
- * gnat_rm.texi: Add doc on pragma Spark_95.
7338
- * gcc-interface/Makefile.in: Remove obsolete target pairs for
7339
- Interfaces.C.* on VMS. Remove s-parame-vms-restrict.ads.
7340
- * gcc-interface/Make-lang.in: Update dependencies.
7342
-2011-08-01 Javier Miranda <miranda@adacore.com>
7344
- * sem_disp.adb (Override_Dispatching_Operation): Enforce strictness of
7345
- condition that detects if the overridden operation must replace an
7348
-2011-08-01 Javier Miranda <miranda@adacore.com>
7350
- * exp_ch4.adb (Expand_N_Case_Expression): Propagate to the expanded
7351
- code declarations inserted by Insert_Actions in each alternative of the
7352
- N_Case_Expression node.
7354
-2011-08-01 Robert Dewar <dewar@adacore.com>
7356
- * sem_ch6.adb: Minor code reorganization.
7357
- * sem_util.adb: Minor reformatting.
7359
-2011-08-01 Pascal Obry <obry@adacore.com>
7361
- * prj-env.adb: Remove <prefix>/lib/gpr/<target> project search path.
7362
- * gnat_ugn.texi: Add documentation for VERSIONINFO Windows resource.
7364
-2011-08-01 Yannick Moy <moy@adacore.com>
7366
- * par-ch4.adb (P_Name): issue a syntax error in SPARK mode on character
7367
- literal or operator symbol which is prefixed
7368
- * sem_attr.adb (Analyze_Access_Attribute): issue an error in formal
7369
- mode on access attributes.
7370
- * sem_ch4.adb (Analyze_Concatenation_Operand): new procedure to check
7371
- that concatenation operands are properly restricted in formal mode
7372
- (Analyze_Concatenation, Analyze_Concatenation_Rest): call new procedure
7373
- Analyze_Concatenation_Operand. Issue an error in formal mode if the
7374
- result of the concatenation has a type different from String.
7375
- (Analyze_Conditional_Expression, Analyze_Explicit_Dereference,
7376
- Analyze_Quantified_Expression, Analyze_Slice,
7377
- Analyze_Null): issue an error in formal mode on unsupported constructs
7379
- (Analyze_Block_Statement): only issue error on source block statement
7380
- * sem_util.ads, sem_util.adb (Last_Source_Node_In_Sequence): new
7381
- function which returns the last node in a list of nodes for which
7382
- Comes_From_Source returns True, if any
7383
- * sem_ch6.adb (Check_Missing_Return): minor refactoring to use
7384
- Last_Source_Node_In_Sequence
7385
- * sem_ch8.adb (Analyze_Exception_Renaming, Analyze_Generic_Renaming,
7386
- Analyze_Object_Renaming, Analyze_Use_Package): issue an error in formal
7387
- mode on unsupported constructs
7388
- * sem_ch9.adb Do not return after issuing error in formal mode, as the
7389
- rest of the actions may be needed later on since the error is marked as
7391
- * sinfo.ads: Typos in comments.
7393
-2011-08-01 Pascal Obry <obry@adacore.com>
7395
- * projects.texi: Minor editing.
7397
-2011-08-01 Yannick Moy <moy@adacore.com>
7399
- * err_vars.ads (Error_Msg_Lang, Error_Msg_Langlen): new variables for
7400
- insertion character ~~
7401
- * errout.ads, errout.adb (Formal_Error_Msg_...): remove procedures
7402
- (Set_Error_Msg_Lang): new procedure which fixes the language for use
7403
- with insertion character ~~
7404
- (Set_Msg_Text): treat insertion character ~~
7405
- * par-ch4.adb, par-ch5.adb, par-endh.adb, sem_attr.adb, sem_ch11.adb,
7406
- sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_util.adb: Replace calls to
7407
- Formal_Error_Msg_... procedures by equivalent Error_Msg_...
7408
- procedures. Favor calls to Error_Msg_F(E) over Error_Msg_N(E). Make
7409
- errors related to the formal language restriction not serious
7410
- (insertion character |).
7411
- * par.adb (Par): set formal language for error messages if needed
7412
- * sem_ch6.adb (Check_Missing_Return): take into account possible
7413
- generated statements at the end of the function
7414
- * snames.ads-tmpl (Name_SPARK_95, Pragma_SPARK_95): new variable and
7415
- enumeration value to define a new pragma SPARK_95
7416
- * opt.ads, opt.adb (SPARK_Version_Type, SPARK_Version_Default,
7417
- SPARK_Version): new type and variables to store the SPARK version
7418
- (none by default).
7419
- (SPARK_Mode): return True when SPARK_Version is set
7420
- * par-prag.adb: Correct indentation
7421
- (Prag): take Pragma_SPARK_95 into account
7422
- * sem_prag.adb (Set_Mechanism_Value, Sig_Flags): take Pragma_SPARK_95
7425
-2011-08-01 Robert Dewar <dewar@adacore.com>
7427
- * sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, prj-part.adb, par-ch4.adb,
7428
- sem_util.adb, sem_ch4.adb, sem_ch6.adb, sem_ch6.ads, sem_ch8.adb,
7429
- sem_ch8.ads, sem_ch13.ads, par-ch5.adb, prj-env.ads: Minor reformatting
7431
-2011-08-01 Pascal Obry <obry@adacore.com>
7433
- * prj-part.ads, prj-part.adb (Parse): Add Target_Name parameter. Pass
7434
- Target_Name to Get_Path call.
7435
- (Parse_Single_Project): Likewise.
7436
- (Post_Parse_Context_Clause): Likewise.
7437
- * prj-env.ads, prj-env.adb (Find_Project): Add Target_Name parameter.
7438
- Call Initialise_Project_Path with the proper Target_Name.
7439
- (Initialize_Project_Path): Add <gnat_root>/<target_name>/lib/gnat
7441
- (Get_Path): Add Target_Name parameter. Call Initialise_Project_Path
7442
- with the proper Target_Name.
7443
- * prj-conf.adb (Get_Or_Create_Configuration_File): Pass Target_Name to
7444
- Part.Parse routine.
7445
- (Parse_Project_And_Apply_Config): Likewise.
7446
- * prj-makr.adb (Initialize): Pass empty Target_Name to Parse routine.
7447
- This is fine as this part of the code is supporting only native
7449
- * prj-pars.adb (Parse): Pass empty Target_Name to Parse routine. This
7450
- is fine as this part of the code is supporting only native compilation.
7452
-2011-08-01 Yannick Moy <moy@adacore.com>
7454
- * sem_util.adb (Enter_Name): issue error in formal mode on declaration
7455
- of homonym, unless the homonym is one of the cases allowed in SPARK
7456
- * par-ch5.adb (Parse_Decls_Begin_End): issue error in SPARK mode for
7457
- package declaration occurring after a body.
7459
-2011-08-01 Robert Dewar <dewar@adacore.com>
7461
- * checks.adb, exp_ch4.adb: Minor reformatting.
7463
-2011-08-01 Javier Miranda <miranda@adacore.com>
7465
- * einfo.ads (Access_Disp_Table): Fix documentation.
7466
- (Dispatch_Table_Wrappers): Fix documentation.
7468
-2011-08-01 Pascal Obry <obry@adacore.com>
7470
- * prj-env.adb, prj-env.ads: Minor reformatting.
7472
-2011-08-01 Yannick Moy <moy@adacore.com>
7474
- * sem_util.ads, sem_util.adb, par.adb, par_util.adb
7475
- (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move
7476
- procedures out of these packages.
7477
- * errout.ads, errout.adb
7478
- (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move
7479
- procedures in of this package
7480
- (Formal_Error_Msg_NE): new procedure for wrapper on Error_Msg_NE
7481
- * par-ch5.adb (Parse_Decls_Begin_End): issue syntax error in SPARK mode
7482
- on misplaced later vs initial declarations, like in Ada 83
7483
- * sem_attr.adb (Processing for Analyze_Attribute): issue error in
7484
- formal mode on attribute of private type whose full type declaration
7486
- * sem_ch3.adb (Analyze_Declarations): issue error in formal mode on a
7487
- package declaration inside a package specification
7488
- (Analyze_Full_Type_Declaration): issue error in formal mode on
7489
- controlled type or discriminant type
7490
- * sem_ch6.adb (Analyze_Subprogram_Specification): only issue error on
7491
- user-defined operator means that it should come from the source
7492
- (New_Overloaded_Entity): issue error in formal mode on overloaded
7494
- * sem_ch6.ads, sem_ch13.ads: typos in comments.
7496
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7498
- * atree.adb: Minor reformatting.
7499
- * checks.adb: Minor reformatting.
7501
-2011-08-01 Vincent Celier <celier@adacore.com>
7503
- * s-parame-vms-ia64.ads: Fix typo in comment
7504
- Minor reformatting
7505
- * s-parame-vms-restrict.ads: Removed, unused.
7507
-2011-08-01 Javier Miranda <miranda@adacore.com>
7510
- (Is_Variable_Size_Array): Remove local subprogram Is_Constant_Bound.
7512
- (Constrain_Index): Remove side effects in the evaluation of the bounds.
7513
- * sem_ch3.ads, sem_ch3.adb
7514
- (Is_Constant_Bound): New extended version of the subprogram that was
7515
- previously located inside function Exp_Ch3.Is_Variable_Size_Array.
7516
- Moved here since it is shared by routines of sem_ch3 and exp_ch3.
7517
- * sem_aux.ads (Constant_Value): Fix typo in comment.
7518
- * checks.adb (Generate_Index_Checks): New implementation which, for
7519
- array objects with constant bounds, generates the runtime check
7520
- referencing the bounds of the array type. For other cases this routine
7521
- provides its previous behavior obtaining such values from the array
7523
- * sem_res.adb (Set_Slice_Subtype): Link a copied range subtree with its
7525
- * atree.adb (New_Copy): Reset flag Is_Overloaded in the new copy since
7526
- we cannot have semantic interpretations of the new node.
7528
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7530
- * sem_ch6.adb (Fully_Conformant_Expressions): handle quantified
7533
-2011-08-01 Arnaud Charlet <charlet@adacore.com>
7535
- * sem_ch8.adb: Minor code editing.
7536
- * s-vxwext.adb: Remove trailing space.
7537
- * freeze.adb, freeze.ads, errout.ads, erroutc.adb: Fix GPLv3 header for
7538
- consistency with other files.
7540
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7542
- * s-auxdec.ads, s-auxdec-vms_64.ads: Minor reformatting.
7544
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7546
- * par-ch10.adb: reject parameterized expressions as compilation unit.
7547
- * sem_ch4.adb: handle properly conditional expression with overloaded
7548
- then_clause and no else_clause.
7550
-2011-08-01 Tristan Gingold <gingold@adacore.com>
7552
- * s-parame-vms-alpha.ads, s-parame-vms-ia64.ads: Redeclare C_Address
7553
- like done by System.Aux_DEC.
7554
- * env.c (__gnat_setenv) [VMS]: Put logicals into LNM$PROCESS table.
7556
-2011-08-01 Yannick Moy <moy@adacore.com>
7558
- * par-endh.adb (Check_End): issue a syntax error in SPARK mode for
7559
- missing label at end of declaration (subprogram or package)
7560
- * par-ch4.adb (P_Name): issue a syntax error in SPARK mode for mixing
7561
- of positional and named parameter association
7562
- * par.adb, par-util.adb (Formal_Error_Msg_SP): new wrapper on
7563
- Error_Msg_SP which adds a prefix to the error message giving the name
7564
- of the formal language analyzed
7565
- * sem_ch6.adb (Analyze_Return_Type): issue an error in formal mode for
7566
- access result type in subprogram, unconstrained array as result type,.
7567
- (Analyze_Subprogram_Declaration): issue an error in formal mode for null
7569
- * sem_ch8.adb: Code clean up.
7571
-2011-08-01 Javier Miranda <miranda@adacore.com>
7573
- * sem_ch7.adb (Uninstall_Declarations): Remove useless code.
7574
- * einfo.ads (Access_Disp_Table): Fix documentation.
7575
- (Dispatch_Table_Wrappers): Fix documentation.
7576
- * einfo.adb (Access_Disp_Table, Dispatch_Table_Wrappers,
7577
- Set_Access_Disp_Table, Set_Dispatch_Table_Wrappers): Fix the assertions
7578
- to enforce the documentation of this attribute.
7579
- (Set_Is_Interface): Cleanup the assertion.
7580
- * exp_ch4.adb (Expand_Allocator_Expression, Tagged_Membership): Locate
7581
- the Underlying_Type entity before reading attribute Access_Disp_Table.
7582
- * exp_disp.adb (Expand_Dispatching_Call, Expand_Interface_Conversion):
7583
- Locate the Underlying_Type before reading attribute Access_Disp_Table.
7584
- * exp_aggr.adb (Build_Array_Aggr_Code, Build_Record_Aggr_Code): Locate
7585
- the Underlying_Type entity before reading attribute Access_Disp_Table.
7586
- * exp_ch3.adb (Build_Record_Init_Proc, Expand_N_Object_Declaration):
7587
- Locate the Underlying_Type entity before reading attribute
7588
- Access_Disp_Table.
7590
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7592
- * s-poosiz.ads: Additional overriding indicators.
7594
-2011-08-01 Yannick Moy <moy@adacore.com>
7596
- * sem_ch5.adb (Analyze_Exit_Statement): add return after error in
7598
- (Analyze_Iteration_Scheme): issue error in formal mode when loop
7599
- parameter specification does not include a subtype mark.
7600
- * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): issue error in
7601
- formal mode on abstract subprogram.
7602
- (Analyze_Subprogram_Specification): issue error in formal mode on
7603
- user-defined operator.
7604
- (Process_Formals): issue error in formal mode on access parameter and
7605
- default expression.
7606
- * sem_ch9.adb (Analyze_Abort_Statement,
7607
- Analyze_Accept_Statement, Analyze_Asynchronous_Select,
7608
- Analyze_Conditional_Entry_Call, Analyze_Delay_Relative,
7609
- Analyze_Delay_Until, Analyze_Entry_Call_Alternative,
7610
- Analyze_Requeue, Analyze_Selective_Accept,
7611
- Analyze_Timed_Entry_Call): issue error in formal mode on such constructs
7612
- * sem_ch11.adb (Analyze_Raise_Statement, Analyze_Raise_xxx_Error):
7613
- issue error in formal mode on user-defined raise statement.
7615
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7617
- * sem_ch6.adb (Enter_Overloaded_Entity): Do not warn about a
7618
- declaration being hidden when overriding an implicit inherited
7620
- * par-ch10.adb (P_Compilation_Unit): In syntax check only mode
7621
- (-gnats), do not complain about a source file that contains only a
7624
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7626
- * sem_ch5.adb (Analyze_Iterator_Scheme): Do not overwrite type of loop
7627
- variable if already set.
7629
-2011-08-01 Arnaud Charlet <charlet@adacore.com>
7631
- * g-socket-dummy.adb, s-osinte-linux.ads, g-socket-dummy.ads,
7632
- g-debuti.adb, g-tasloc.adb, g-debuti.ads, g-tasloc.ads,
7633
- s-osinte-hpux.ads, g-sercom.adb, g-soliop-solaris.ads, g-sercom.ads,
7634
- g-sptain.ads, g-curexc.ads, s-tasloc.adb, s-tasloc.ads, s-tataat.adb,
7635
- g-ctrl_c.adb, a-reatim.adb, s-tataat.ads, g-dirope.adb, g-ctrl_c.ads,
7636
- g-dirope.ads, g-boubuf.adb, g-calend.adb, g-boubuf.ads, g-souinf.ads,
7637
- g-table.adb, g-bytswa-x86.adb, g-wispch.adb, g-io.adb, g-table.ads,
7638
- g-wispch.ads, g-io.ads, g-memdum.adb, g-memdum.ads, g-busorg.adb,
7639
- g-busorg.ads, g-regpat.adb, g-sothco-dummy.adb, g-encstr.adb,
7640
- g-regpat.ads, g-sothco-dummy.ads, s-osinte-aix.ads, g-encstr.ads,
7641
- g-sercom-mingw.adb, s-mastop-vms.adb, g-diopit.adb, g-diopit.ads,
7642
- s-vxwext.adb, g-dyntab.adb, g-dyntab.ads, g-crc32.adb,
7643
- g-sercom-linux.adb, g-crc32.ads, s-regpat.adb, g-flocon.ads,
7644
- s-regpat.ads, g-stheme.adb, g-sestin.ads, s-taspri-posix-noaltstack.ads,
7645
- g-soliop.ads, s-inmaop-posix.adb, g-locfil.ads, g-enblsp-vms-alpha.adb,
7646
- g-socthi-dummy.adb, g-socthi-dummy.ads, gnat.ads, g-moreex.adb,
7647
- g-moreex.ads, g-dynhta.adb, g-dynhta.ads, g-deutst.ads, g-htable.adb,
7648
- g-cgicoo.adb, g-htable.ads, g-cgicoo.ads, a-interr.adb,
7649
- g-socthi-vms.adb, g-socthi-vms.ads, g-hesora.adb, g-bubsor.adb,
7650
- g-hesora.ads, g-bubsor.ads, g-md5.adb, g-md5.ads, s-intman-irix.adb,
7651
- s-htable.adb, s-osinte-vms.adb, s-htable.ads, s-osinte-vms.ads,
7652
- s-taprob.adb, g-bytswa.adb, g-bytswa.ads, s-osinte-solaris-posix.ads,
7653
- a-suenco.adb, g-comver.adb, g-comver.ads, g-exctra.adb,
7654
- s-osinte-solaris.adb, g-exctra.ads, s-osinte-irix.ads,
7655
- s-osinte-solaris.ads, a-caldel-vms.adb, g-socthi-vxworks.adb,
7656
- g-expect.adb, g-socthi-vxworks.ads, g-expect.ads, g-comlin.ads,
7657
- g-heasor.adb, g-heasor.ads, g-traceb.adb, g-traceb.ads, g-decstr.adb,
7658
- g-spipat.adb, g-decstr.ads, g-spipat.ads, s-mastop-tru64.adb,
7659
- g-except.ads, g-thread.adb, g-hesorg.adb, g-thread.ads, g-hesorg.ads,
7660
- g-expect-vms.adb, a-stuten.ads, g-spchge.adb, g-spchge.ads,
7661
- g-u3spch.adb, g-u3spch.ads, g-spitbo.adb, g-spitbo.ads,
7662
- s-osinte-dummy.ads, s-osinte-posix.adb, g-pehage.adb, g-pehage.ads,
7663
- s-gloloc-mingw.adb, g-sha1.ads, s-traceb-hpux.adb,
7664
- g-trasym-unimplemented.adb, g-trasym-unimplemented.ads, g-io_aux.adb,
7665
- g-regexp.adb, g-io_aux.ads, g-socthi-mingw.adb, g-regexp.ads,
7666
- s-osinte-hpux-dce.adb, g-socthi-mingw.ads, g-cgi.adb,
7667
- s-osinte-hpux-dce.ads, g-cgi.ads, g-byorma.adb, g-boumai.ads,
7668
- g-byorma.ads, a-caldel.adb, s-regexp.adb, s-regexp.ads,
7669
- g-soliop-mingw.ads, g-sptavs.ads, s-osinte-tru64.ads, g-speche.adb,
7670
- g-speche.ads, g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads,
7671
- s-osinte-darwin.ads, i-vxwork-x86.ads, g-awk.adb, i-vxwork.ads,
7672
- g-awk.ads, g-zspche.adb, g-zspche.ads, g-socket.adb, g-sptabo.ads,
7673
- g-socket.ads, g-semaph.adb, g-semaph.ads, s-taspri-posix.ads,
7674
- g-enblsp-vms-ia64.adb, g-cgideb.adb, g-cgideb.ads, g-sothco.adb,
7675
- s-osinte-freebsd.ads, g-sothco.ads, g-catiio.adb, g-casuti.adb,
7676
- g-catiio.ads, g-casuti.ads, g-trasym.adb, g-trasym.ads, s-casuti.adb,
7677
- g-os_lib.adb, s-traceb-mastop.adb, g-busora.adb, s-interr-dummy.adb,
7678
- g-busora.ads, g-enutst.ads, s-os_lib.adb, a-tasatt.adb,
7679
- s-osinte-mingw.ads: Update to GPLv3 run-time license.
7680
- Use GNAT instead of GNARL.
7682
-2011-08-01 Bob Duff <duff@adacore.com>
7684
- * a-cdlili.ads, a-cihama.ads, a-coinve.ads, a-ciorse.ads, a-coorma.ads,
7685
- a-cidlli.ads, a-ciormu.ads, a-cihase.ads, a-cohama.ads, a-coorse.ads,
7686
- a-ciorma.ads, a-coormu.ads, a-convec.ads, a-cohase.ads: Minor
7689
-2011-08-01 Yannick Moy <moy@adacore.com>
7691
- * debug.adb (d.D) reverve flag for the SPARK mode
7692
- (d.E) reverve flag for SPARK generation mode
7693
- (d.F) reverve flag for Why generation mode
7694
- * opt.ads, opt.adb (ALFA_Mode, ALFA_Through_SPARK_Mode,
7695
- ALFA_Through_Why_Mode, Formal_Verification_Mode, SPARK_Mode): New
7696
- functions which return True when the corresponding modes are set
7697
- (Formal_Language): return "spark" or "alfa" when in formal verification
7699
- * sem_util.ads, sem_util.adb (Formal_Error_Msg): new wrapper on
7700
- Error_Msg to prefix the error message with a tag giving the formal
7702
- (Formal_Error_Msg_N): new wrapper on Error_Msg_N to prefix the error
7703
- message with a tag giving the formal language
7704
- * sem_ch5.adb (Analyze_Block_Statement): issue error in formal mode on
7706
- (Analyze_Case_Statement): issue error in formal mode on case statement
7707
- with a single "others" case alternative
7708
- (Analyze_Exit_Statement): issue errors in formal mode on exit
7709
- statements which do not respect SPARK restrictions
7710
- (Analyze_Goto_Statement): issue error in formal mode on goto statement
7711
- (Check_Unreachable_Code): always issue an error (not a warning) in
7712
- formal mode on unreachable code (concerns both code after an infinite
7713
- loop and after an unconditional jump, both not allowed in SPARK)
7714
- * sem_ch6.adb (Analyze_Return_Statement): add call to
7715
- Set_Return_Present for a procedure containing a return statement
7716
- (already done for functions in Analyze_Function_Return)
7717
- (Analyze_Function_Return): issue error in formal mode on extended
7718
- return or if return is not last statement in function
7719
- (Check_Missing_Return): issue error in formal mode if function does
7720
- not end with return or if procedure contains a return
7721
- * sem_ch8.ads, sem_ch8.adb (Has_Loop_In_Inner_Open_Scopes): new
7722
- function to detect if there is an inner scope of its parameter S which
7725
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7727
- * sem_ch6.ads: Minor reformatting.
7729
-2011-08-01 Javier Miranda <miranda@adacore.com>
7731
- * sem_util.adb (Abstract_Interface_List): Complete condition when
7732
- processing private type declarations to avoid reading unavailable
7734
- (Is_Synchronized_Tagged_Type): Complete condition when processing
7735
- private extension declaration nodes to avoid reading unavailable
7738
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7740
- * sem_ch3.adb: Minor reformatting.
7742
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7744
- * s-parame-ae653.ads, s-parame-vms-alpha.ads, s-parame-hpux.ads,
7745
- i-cpoint.adb, i-cstrin.adb, i-cpoint.ads, i-cstrin.ads,
7746
- s-parame-vms-ia64.ads, s-parame.ads, i-c.ads, s-parame-vxworks.ads,
7747
- s-parame-vms-restrict.ads: Remove duplicated Interfaces.C.* packages
7748
- for VMS, instead parametrize the common implementation with
7749
- System.Parameters declarations.
7751
-2011-08-01 Eric Botcazou <ebotcazou@adacore.com>
7753
- * gnat_rm.texi: Document limitation of Pragma No_Strict_Aliasing.
7755
-2011-08-01 Tristan Gingold <gingold@adacore.com>
7757
- * seh_init.c: Fix SEH handler installation on win64.
7759
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7761
- * sem_ch3.adb (Access_Subprogram_Declaration): in Asis mode, prevent
7762
- double analysis of an anonymous access to subprogram, because it can
7763
- lead to improper sharing of profiles and a back-end crash.
7765
-2011-08-01 Robert Dewar <dewar@adacore.com>
7767
- * make.adb, sem_ch4.adb: Minor reformatting.
7768
- * gcc-interface/Make-lang.in: Update dependencies.
7769
- * sem_util.adb, exp_ch5.adb: Minor reformatting.
7771
-2011-08-01 Arnaud Charlet <charlet@adacore.com>
7773
- * gnat_rm.texi: Fix definition of Long_Integer.
7775
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7777
- * exp_aggr.adb: check limit size of static aggregate unconditionally,
7778
- to prevent storage exhaustion.
7779
- * exp_ch7.adb (Clean_Simple_Protected_Objects): if the scope being
7780
- finalized is a function body, insert the cleanup code before the final
7781
- return statement, to prevent spurious warnings.
7782
- * s-pooglo.ads: add overriding indicator.
7784
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7786
- * sem_ch4.adb (Operator_Check): improve error message when both a
7787
- with_clause and a use_clause are needed to make operator usage legal.
7788
- * sem_util.ads, sem_util.adb (Unit_Is_Visible): new predicate to
7789
- determine whether a compilation unit is visible within an other,
7790
- either through a with_clause in the current unit, or a with_clause in
7791
- its library unit or one one of its parents.
7793
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7795
- * exp_ch5.adb (Expand_N_Iterator_Loop): handle properly an iterator
7796
- over an arbitrary expression of an array or container type.
7797
- * lib-xref.adb: clarify comment.
7799
-2011-08-01 Bob Duff <duff@adacore.com>
7801
- * einfo.ads: Minor reformatting.
7802
- * debug.adb: Minor comment improvement.
7804
-2011-08-01 Javier Miranda <miranda@adacore.com>
7806
- * sem_ch4.adb (Try_Object_Operation): For class-wide subprograms do not
7807
- consider hidden subprograms as valid candidates.
7809
-2011-08-01 Arnaud Charlet <charlet@adacore.com>
7811
- * make.adb (Compile): Strip -mxxx switches in CodePeer mode.
7813
-2011-08-01 Vasiliy Fofanov <fofanov@adacore.com>
7815
- * gnat_ugn.texi: Fix typo.
7817
-2011-08-01 Robert Dewar <dewar@adacore.com>
7819
- * i-cstrin.adb, sem_util.adb, exp_ch11.adb, sem_ch8.adb,
7820
- lib-xref.adb: Minor reformatting
7822
-2011-08-01 Gary Dismukes <dismukes@adacore.com>
7824
- * exp_ch6.adb (Expand_N_Extended_Return_Statement): Replace test of
7825
- when to generate a call to Move_Final_List.
7826
- (Has_Controlled_Parts): Remove this function.
7828
-2011-08-01 Geert Bosch <bosch@adacore.com>
7830
- * par-ch3.adb (P_Discrete_Choice_List): Improve error message for extra
7831
- "," in choice list.
7833
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7835
- * exp_ch11.adb (Expand_N_Raise_Statement): Mark N_Raise_xxx_Error for
7836
- explicit raise of a predefined exception as Comes_From_Source if the
7837
- original N_Raise_Statement comes from source.
7839
-2011-08-01 Robert Dewar <dewar@adacore.com>
7841
- * sinfo.ads: Add comment.
7842
- * sem_ch6.adb: Minor reformatting.
7844
-2011-08-01 Robert Dewar <dewar@adacore.com>
7846
- * freeze.adb (Freeze_Entity): Refine check for bad component size
7847
- clause to avoid rejecting confirming clause when atomic/aliased present.
7849
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7851
- * sem_ch8.adb (Find_Direct_Name, Analyze_Expanded_Name): use Is_LHS to
7852
- better determine whether an entity reference is a write.
7853
- * sem_util.adb (Is_LHS): refine predicate to handle assignment to a
7855
- * lib-xref.adb (Output_References): Do no suppress a read reference at
7856
- the same location as an immediately preceeding modify-reference, to
7857
- handle properly in-out actuals.
7859
-2011-08-01 Tristan Gingold <gingold@adacore.com>
7861
- * env.c (__gnat_setenv) [VMS]: Refine previous change.
7863
-2011-08-01 Quentin Ochem <ochem@adacore.com>
7865
- * i-cstrin.adb (New_String): Changed implementation, now uses only the
7866
- heap to compute the result.
7868
-2011-08-01 Robert Dewar <dewar@adacore.com>
7870
- * atree.ads: Minor reformatting.
7872
-2011-08-01 Emmanuel Briot <briot@adacore.com>
7874
- * g-expect.adb (Get_Command_Output): Fix memory leak.
7876
-2011-08-01 Geert Bosch <bosch@adacore.com>
7878
- * cstand.adb (P_Float_Type): New procedure to print the definition of
7879
- predefined fpt types.
7880
- (P_Mixed_Name): New procedure to print a name using mixed case
7881
- (Print_Standard): Use P_Float_Type for printing floating point types
7882
- * einfo.adb (Machine_Emax_Value): Add preliminary support for quad
7883
- precision IEEE float.
7885
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7887
- * sem_ch3.adb: Minor reformatting.
7889
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7891
- * sem_ch6.adb (Analyze_Parameterized_Expression): If the expression is
7892
- the completion of a generic function, insert the new body rather than
7893
- rewriting the original.
7895
-2011-08-01 Yannick Moy <moy@adacore.com>
7897
- * sinfo.ads, errout.ads: Typos in comments.
7899
-2011-08-01 Robert Dewar <dewar@adacore.com>
7901
- * par-endh.adb: Minor reformatting.
7903
-2011-08-01 Robert Dewar <dewar@adacore.com>
7905
- * aspects.ads, aspects.adb: Add aspects for library unit pragmas
7906
- (Pre_Post_Aspects): New subtype.
7907
- * par-ch12.adb (P_Generic): New syntax for aspects in packages
7908
- * par-ch13.adb (P_Aspect_Specifications): Add Semicolon parameter
7909
- * par-ch7.adb (P_Package): Remove Decl parameter
7910
- (P_Package): Handle new syntax for aspects (before IS)
7911
- * par-ch9.adb (P_Protected_Definition): Remove Decl parameter, handle
7913
- (P_Task_Definition): Remove Decl parameter, handle new aspect syntax
7914
- * par.adb (P_Aspect_Specifications): Add Semicolon parameter
7915
- (P_Package): Remove Decl parameter
7916
- * sem_ch13.adb (Analyze_Aspect_Specifications): Handle library unit
7918
- * sem_ch7.adb (Analyze_Package_Declaration): Analyze new format aspect
7920
- * sem_util.ads, sem_util.adb (Static_Boolean): New function
7921
- * sinfo.ads: Document new syntax for aspects in packages etc.
7922
- * sprint.adb: Handle new syntax of aspects before IS in package
7924
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7926
- * atree.ads: Minor reformatting.
7927
- * sem_prag.adb: Minor reformatting.
7929
-2011-08-01 Robert Dewar <dewar@adacore.com>
7931
- * exp_util.adb (Insert_Actions): Fix error in handling Actions for
7932
- case expr alternative.
7934
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
7936
- * sem_ch12.adb: Fix typo.
7938
-2011-08-01 Geert Bosch <bosch@adacore.com>
7940
- * sem_prag.adb (Check_No_Link_Name): New procedure.
7941
- (Process_Import_Or_Interface): Use Check_No_Link_Name.
7942
- * cstand.adb (Create_Standard): Use Esize (Standard_Long_Long_Float)
7943
- instead of Standard_Long_Long_Float_Size global. Preparation for
7944
- eventual removal of per type constants.
7945
- * exp_util.ads (Get_Stream_Size): New function returning the stream
7946
- size value of subtype E.
7947
- * exp_util.adb (Get_Stream_Size): Implement new function.
7948
- * exp_strm.adb (Build_Elementary_Input_Call): Use Get_Stream_Size
7950
- * exp_attr.adb (Attribute_Stream_Size): Use Get_Stream_Size
7952
- (Machine_Mantissa_Value): Handle 128-bit quad precision IEEE floats
7954
-2011-08-01 Geert Bosch <bosch@adacore.com>
7956
- * cstand.adb: Fix comments.
7957
- * sem_prag.adb (Analyze_Pragma): Use List_Length instead of explicit
7958
- count of arguments.
7960
-2011-08-01 Robert Dewar <dewar@adacore.com>
7962
- * exp_ch4.adb, sem_cat.adb: Minor reformatting.
7964
-2011-08-01 Geert Bosch <bosch@adacore.com>
7966
- * atree.ads: Fix comment.
7968
-2011-08-01 Robert Dewar <dewar@adacore.com>
7970
- * aspects.ads, aspects.adb (Aspect_Names): Moved from body to spec.
7971
- * par-ch13.adb (P_Aspect_Specifications): Check misspelled aspect name.
7972
- * par.adb: Add with for Namet.Sp.
7973
- * par-tchk.adb: Minor reformatting.
7975
-2011-08-01 Vincent Celier <celier@adacore.com>
7977
- * mlib-tgt-specific-vms-alpha.adb, mlib-tgt-specific-vms-ia64.adb
7978
- (Build_Dynamic_Library): Use new function Init_Proc_Name to get the name
7979
- of the init procedure of a SAL.
7980
- * mlib-tgt-vms_common.ads, mlib-tgt-vms_common.adb (Init_Proc_Name):
7983
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7985
- * exp_ch4.adb, s-tasini.ads, sem_attr.adb, s-soflin.ads: Minor
7988
-2011-08-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7990
- * adaint.c (__gnat_file_time_name_attr): Get rid of warning.
7992
-2011-08-01 Thomas Quinot <quinot@adacore.com>
7994
- * sem_util.adb, sem_util.ads (Has_Overriding_Initialize): Make function
7995
- conformant with its spec (return True only for types that have
7996
- an overriding Initialize primitive operation that prevents them from
7997
- having preelaborable initialization).
7998
- * sem_cat.adb (Validate_Object_Declaration): Fix test for preelaborable
7999
- initialization for controlled types in Ada 2005 or later mode.
8001
-2011-08-01 Robert Dewar <dewar@adacore.com>
8003
- * aspects.ads, aspects.adb: Add aspect Type_Invariant, Precondition,
8005
- (Same_Aspect): New function.
8006
- * sem_ch13.adb (Analyze_Aspect_Specifications): Add aspect
8007
- Type_Invariant, Precondition, Postcondition.
8008
- * snames.ads-tmpl: Add Name_Type_Invariant.
8010
-2011-08-01 Robert Dewar <dewar@adacore.com>
8012
- * freeze.adb (Freeze_Entity): Don't call Check_Aspect_At_Freeze_Point
8014
- (Freeze_All_Ent): Fix error in handling inherited aspects.
8015
- * sem_ch13.adb (Analyze_Aspect_Specifications): Skip aspect that is
8016
- already analyzed, but don't skip entire processing of a declaration,
8017
- that's wrong in some cases of declarations being rewritten.
8018
- (Analyze_Aspect_Specification): Set Is_Delayed_Aspect in aspects.
8019
- Don't delay for integer, string literals
8020
- Treat predicates in usual manner for delay, remove special case code,
8022
- (Analyze_Freeze_Entity): Make call to Check_Aspect_At_Freeze_Point
8023
- (Build_Predicate_Function): Update saved expression in aspect
8024
- (Build_Invariant_Procedure): Update saved expression in aspect
8025
- * exp_ch4.adb (Expand_N_Selected_Component): Only do the optimization
8026
- of replacement of discriminant references if the reference is simple.
8028
-2011-08-01 Robert Dewar <dewar@adacore.com>
8030
- * aspects.ads, aspects.adb: Add Static_Predicate and Dynamic_Predicate.
8031
- * sem_ch13.adb (Analyze_Aspect_Specification): Add processing for
8032
- Static_Predicate and Dynamic_Predicate.
8033
- (Build_Predicate_Function): Add processing for Static_Predicate
8034
- and Dynamic_Predicate.
8035
- * sinfo.ads, sinfo.adb (From_Dynamic_Predicate): New flag
8036
- (From_Static_Predicate): New flag
8037
- * snames.ads-tmpl: Add Name_Static_Predicate and Name_Dynamic_Predicate
8039
-2011-08-01 Robert Dewar <dewar@adacore.com>
8041
- * usage.adb: Documentation cleanup for Ada version modes in usage.
8042
- * expander.adb: Minor reformatting.
8044
-2011-08-01 Robert Dewar <dewar@adacore.com>
8046
- * atree.ads: Minor comment fix.
8047
- * a-stwifi.adb, a-stzfix.adb, a-strfix.adb, a-ztexio.ads, a-textio.ads,
8048
- a-witeio.ads, sem_prag.adb: Minor reformatting.
8050
-2011-08-01 Doug Rupp <rupp@adacore.com>
8052
- * env.c (__gnat_setenv) [VMS]: Force 32bit on item list structure
8053
- pointers. Use descrip.h header file for convenience. Add some
8056
-2011-08-01 Robert Dewar <dewar@adacore.com>
8058
- * freeze.adb (Freeze_Entity): Call Check_Aspect_At_Freeze_Point
8059
- (Freeze_All): Call Check_Aspect_At_End_Of_Declarations
8060
- * sem_ch13.ads, sem_ch13.adb (Check_Aspect_At_Freeze_Point):
8062
- (Check_Aspect_At_End_Of_Declarations): New procedure
8063
- (Analye_Aspect_Specification): Minor changes for above procedures
8064
- * sinfo.ads, sinfo.adb (Is_Delayed_Aspect): Now set in aspect
8065
- specification node as well.
8067
-2011-08-01 Pascal Obry <obry@adacore.com>
8069
- * adaint.c (_gnat_stat): GetFilesAttributesEx() would fail on special
8070
- Windows files. Use GetFilesAttributes() in this case to check for file
8071
- existence instead of returning with an error code.
8073
-2011-08-01 Vincent Celier <celier@adacore.com>
8075
- * a-stzfix.adb, a-stwifi.adb (Replace_Slice): Fixed computation when
8076
- High is above Source length.
8078
-2011-08-01 Robert Dewar <dewar@adacore.com>
8080
- * a-ztexio.ads, a-textio.ads, a-witeio.ads: Fix comment.
8082
-2011-08-01 Robert Dewar <dewar@adacore.com>
8084
- * aspects.ads (Boolean_Aspects): New subtype.
8085
- * exp_ch13.adb (Expand_Freeze_Entity): Fix errors in handling aspects
8086
- for derived types in cases where the parent type and derived type have
8088
- * freeze.adb (Freeze_Entity): Fix problems in handling derived type
8089
- with aspects when parent type also has aspects.
8090
- (Freeze_Entity): Deal with delay of boolean aspects (must evaluate
8091
- boolean expression at this point).
8092
- * sem_ch13.adb (Analyze_Aspect_Specifications): Delay all aspects in
8093
- accordance with final decision on the Ada 2012 feature.
8094
- * sinfo.ads, sinfo.adb (Is_Boolean_Aspect): New flag.
8096
-2011-08-01 Matthew Heaney <heaney@adacore.com>
8098
- * a-chtgbo.adb (Delete_Node_Sans_Free): Replace iterator with selector.
8100
-2011-08-01 Pascal Obry <obry@adacore.com>
8102
- * a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb:
8103
- Fix Replace_Slice when High is above current string size.
8104
- (Replace_Slice): Fix DL computation when High is above current
8107
-2011-08-01 Gary Dismukes <dismukes@adacore.com>
8109
- * gnat_rm.texi: Add documentation for pragma Static_Elaboration_Desired.
8111
-2011-08-01 Matthew Heaney <heaney@adacore.com>
8113
- * a-rbtgbo.adb (Delete_Node_Sans_Free): Fixed assignment to left child
8116
-2011-08-01 Pascal Obry <obry@adacore.com>
8118
- * a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb: Minor
8121
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
8123
- * sem_attr.adb (Analyze_Attribute, case 'Access): Handle properly named
8124
- access to protected subprograms in generic bodies.
8125
- * sem_ch6.adb (Analyze_Subprogram_Declaration): If the context is a
8126
- protected type, indicate that the convention of the subprogram is
8127
- Convention_Protected, because it may be used in subsequent declarations
8128
- within the protected declaration.
8130
-2011-08-01 Vincent Celier <celier@adacore.com>
8132
- * mlib-prj.adb (Build_Library): Use "ada_" as the prefix for the "init"
8133
- and "final" procedures when the name of the library is "ada", to avoid
8134
- duplicate symbols "adainit" and "adafinal" in executables.
8136
-2011-08-01 Ed Schonberg <schonberg@adacore.com>
8138
- * sem_attr.adb (Analyze_Attribute, case 'Result): Handle properly a
8139
- quantified expression that appears within a postcondition and uses the
8140
- Ada2012 'Result attribute.
8142
-2011-07-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
8144
- * init.c (__gnat_error_handler): Cast reason to int.
8145
- (__gnat_install_handler): Explain sa_sigaction use.
8147
-2011-07-24 Eric Botcazou <ebotcazou@adacore.com>
8149
- * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: If the
8150
- subprogram has copy-in copy-out parameters, try to promote the mode of
8151
- the return type if it is passed in registers.
8153
-2011-07-24 Eric Botcazou <ebotcazou@adacore.com>
8155
- * gcc-interface/utils2.c (build_binary_op) <ARRAY_REF>: Do not mark the
8156
- left operand as addressable.
8158
-2011-07-24 Eric Botcazou <ebotcazou@adacore.com>
8160
- * gcc-interface/gigi.h (build_function_stub): Remove.
8161
- (build_return_expr): Likewise.
8162
- (convert_vms_descriptor): Declare.
8163
- * gcc-interface/utils.c (convert_vms_descriptor): Make global.
8164
- (build_function_stub): Move to...
8165
- * gcc-interface/utils2.c (build_return_expr): Move to...
8166
- * gcc-interface/trans.c (build_function_stub): ...here.
8167
- (build_return_expr): ...here.
8168
- (Subprogram_Body_to_gnu): Add local variable for language_function.
8169
- Disconnect the parameter attributes cache, if any, once done with it.
8170
- Call end_subprog_body only after setting the end_locus.
8171
- Build the stub associated with the function, if any, at the very end.
8172
- (gnat_to_gnu) <N_Return_Statement>: Remove couple of useless local
8173
- variables and streamline control flow.
8175
-2011-07-23 Arnaud Charlet <charlet@adacore.com>
8178
- * gcc-interface/Makefile.in (powerpc-linux): Remove reference to
8179
- g-trasym-dwarf.adb.
8181
-2011-07-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
8183
- PR bootstrap/49794
8184
- * init.c [sun && __SVR4 && !__vxworks] (__gnat_install_handler):
8185
- Assign to act.sa_sigaction.
8186
- * tracebak.c [USE_GENERIC_UNWINDER] (__gnat_backtrace): Cast
8187
- current->return_address to char * before arithmetic.
8189
-2011-07-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
8191
- * init.c [sgi] (__gnat_error_handler): Update sigaction(2) citation.
8192
- Correct argument types.
8193
- Extract code from reason.
8194
- (__gnat_install_handler): Assign to act.sa_sigaction.
8196
-2011-07-21 Eric Botcazou <ebotcazou@adacore.com>
8198
- * gcc-interface/Make-lang.in (GNAT1_ADA_OBJS): Move ada/b_gnat1.o to...
8199
- (GNAT1_OBJS): ...here.
8201
-2011-07-15 Eric Botcazou <ebotcazou@adacore.com>
8204
- * g-socthi-mingw.adb (Fill): Fix formatting.
8206
- * gcc-interface/gigi.h: Move around comment.
8208
-2011-07-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
8211
- * s-taprop-hpux-dce.adb (Abort_Task): Remove unnecessary cast.
8213
-2011-07-14 Florian Weimer <fw@deneb.enyo.de>
8216
- * g-socthi-mingw.adb (Fill): Guard against invalid MSG_WAITALL.
8218
-2011-07-13 Eric Botcazou <ebotcazou@adacore.com>
8220
- * gcc-interface/utils.c (build_vms_descriptor32): Skip the 32-bit
8221
- range comparison if Pmode is SImode.
8223
-2011-07-12 Laurent GUERBY <laurent@guerby.net>
8224
- Eric Botcazou <ebotcazou@adacore.com>
8226
- * adadecode.c: Wrap up in extern "C" block.
8227
- * adadecode.h: Likewise.
8228
- * adaint.c: Likewise. Remove 'const' keyword.
8229
- * adaint.h: Likewise.
8230
- * argv.c: Likewise.
8231
- * atree.h: Likewise.
8232
- * cio.c: Likewise.
8233
- * cstreams.c: Likewise.
8234
- * env.c: Likewise.
8235
- * exit.c: Likewise.
8237
- * final.c: Likewise.
8238
- * init.c: Likewise.
8239
- * initialize.c: Likewise.
8240
- * link.c: Likewise.
8241
- * namet.h: Likewise.
8242
- * nlists.h: Likewise.
8243
- * raise.c: Likewise.
8244
- * raise.h: Likewise.
8245
- * repinfo.h: Likewise.
8246
- * seh_init.c: Likewise.
8247
- * targext.c: Likewise.
8248
- * tracebak.c: Likewise.
8249
- * uintp.h: Likewise.
8250
- * urealp.h: Likewise.
8251
- * xeinfo.adb: Wrap up generated C code in extern "C" block.
8252
- * xsinfo.adb: Likewise.
8253
- * xsnamest.adb: Likewise.
8254
- * gcc-interface/gadaint.h: Wrap up in extern "C" block.
8255
- * gcc-interface/gigi.h: Wrap up some prototypes in extern "C" block.
8256
- * gcc-interface/misc.c: Likewise.
8257
- * gcc-interface/Make-lang.in (GCC_LINK): Use LINKER.
8258
- (GNAT1_C_OBJS): Remove ada/b_gnat1.o. List ada/seh_init.o and
8259
- ada/targext.o here...
8260
- (GNAT_ADA_OBJS): ...and not here.
8261
- (GNAT1_ADA_OBJS): Add ada/b_gnat1.o.
8262
- (GNATBIND_OBJS): Reorder.
8264
-2011-07-07 Richard Henderson <rth@redhat.com>
8266
- * gcc-interface/misc.c (gnat_init_gcc_eh): Don't call
8267
- dwarf2out_frame_init.
8269
-2011-07-07 Eric Botcazou <ebotcazou@adacore.com>
8271
- * gcc-interface/misc.c (gnat_init): Tweak previous change.
8273
-2011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
8276
- * gcc-interface/Makefile.in: Handle x86_64-solaris2.
8278
-2011-07-06 Richard Guenther <rguenther@suse.de>
8280
- * gcc-interface/misc.c (gnat_init): Merge calls to
8281
- build_common_tree_nodes and build_common_tree_nodes_2.
8282
- Re-initialize boolean_false_node.
8284
-2011-07-02 Eric Botcazou <ebotcazou@adacore.com>
8285
- Olivier Hainque <hainque@adacore.com>
8286
- Nicolas Setton <setton@adacore.com>
8288
- * gcc-interface/utils.c (record_builtin_type): Set TYPE_ARTIFICIAL on
8289
- the type according to the ARTIFICIAL_P parameter.
8290
- (create_type_decl): Likewise.
8291
- (create_type_stub_decl): Set TYPE_ARTIFICIAL on the type to 1.
8293
-2011-07-01 Eric Botcazou <ebotcazou@adacore.com>
8295
- * gcc-interface/Make-lang.in (gnat1): Prepend '+' to the command.
8296
- (gnatbind): Likewise.
8298
-2011-06-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
8300
- * gcc-interface/Makefile.in (TOOLS_LIBS): Add $(LIBINTL).
8302
-2011-06-18 Eric Botcazou <ebotcazou@adacore.com>
8304
- * gcc-interface/decl.c (gnat_to_gnu_component_type): Use GNAT_TYPE
8305
- local variable throughout. Remove useless call to Base_Type.
8306
- (gnat_to_gnu_field): Use GNAT_FIELD_TYPE local variable throughout.
8307
- Take it also into account for the volatileness of the field. Set the
8308
- TREE_SIDE_EFFECTS flag as well in this case. Reorder some warnings.
8310
-2011-06-18 Eric Botcazou <ebotcazou@adacore.com>
8312
- * gcc-interface/trans.c (Identifier_to_gnu): Don't set TREE_THIS_NOTRAP
8313
- on a dereference built for a by-ref object if it has an address clause.
8315
-2011-06-18 Eric Botcazou <ebotcazou@adacore.com>
8317
- * einfo.ads (Address_Taken): Document use for the second argument of
8318
- Asm_Input and Asm_Output attributes.
8319
- * sem_attr.adb (Analyze_Attribute) <Attribute_Asm_Input>: If the second
8320
- argument is an entity name, then set Address_Taken on it.
8321
- <Attribute_Asm_Output>: Likewise.
8322
- * gcc-interface/trans.c (lvalue_required_for_attribute_p): Handle the
8323
- Attr_Asm_Input and Attr_Asm_Output attributes explicitly.
8324
- (gnat_to_gnu) <N_Code_Statement>: If an operand is going to end up in
8325
- memory and is a CONST_DECL, retrieve its corresponding VAR_DECL.
8327
-2011-06-16 Joern Rennecke <joern.rennecke@embecosm.com>
8329
- PR middle-end/46500
8330
- * gcc-interface/decl.c (gnat_to_gnu_param): Use pack_cumulative_args.
8332
-2011-06-14 Joseph Myers <joseph@codesourcery.com>
8334
- * gcc-interface/Make-lang.in (gnatbind$(exeext)): Use ggc-none.o.
8335
- (ada/utils.o): Update dependencies.
8336
- * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Add
8337
- ../../../libcpp/libcpp.a.
8338
- * gcc-interface/utils.c: Include common/common-target.h.
8339
- (process_attributes): Use targetm_common.have_named_sections.
8341
-2011-06-07 Richard Guenther <rguenther@suse.de>
8343
- * gcc-interface/misc.c (gnat_init): Do not set size_type_node or call
8346
-2011-06-06 Eric Botcazou <ebotcazou@adacore.com>
8348
- * gcc-interface/utils2.c (gnat_stabilize_reference): Propagate the
8349
- TREE_THIS_NOTRAP flag.
8351
-2011-06-06 Eric Botcazou <ebotcazou@adacore.com>
8353
- * gcc-interface/utils2.c (gnat_stabilize_reference) <COMPOUND_EXPR>:
8356
-2011-06-06 Eric Botcazou <ebotcazou@adacore.com>
8358
- * gcc-interface/trans.c (Identifier_to_gnu): Also handle deferred
8359
- constants whose full view has discriminants specially.
8361
-2011-06-06 Eric Botcazou <ebotcazou@adacore.com>
8363
- * gcc-interface/utils.c: Include diagnostic.h.
8364
- (gnat_write_global_declarations): Output debug information for all
8365
- global type declarations before finalizing the compilation unit.
8366
- * gcc-interface/Make-lang.in (ada/utils.o): Add dependency.
8368
-2011-05-25 Jakub Jelinek <jakub@redhat.com>
8370
- * gcc-interface/utils.c (def_fn_type): Remove extra va_end.
8372
-2011-05-25 Kai Tietz <ktietz@redhat.com>
8374
- * adaint.c (__gnat_to_canonical_file_list_next): Use array
8375
- initialization instead of const/none-const pointer assignment.
8377
-2011-05-24 Joseph Myers <joseph@codesourcery.com>
8379
- * gcc-interface/Make-lang.in (GNAT1_OBJS): Don't include
8380
- $(EXTRA_GNAT1_OBJS).
8381
- (GNATBIND_OBJS): Don't include $(EXTRA_GNATBIND_OBJS).
8382
- (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Remove.
8383
- (gnat1$(exeext), gnatbind$(exeext)): Use libcommon-target.a.
8384
- * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use
8385
- libcommon-target.a instead of prefix.o.
8387
-2011-05-21 Joseph Myers <joseph@codesourcery.com>
8390
- * gcc-interface/Make-lang.in (gnatbind$(exeext)): Depend on $(LIBDEPS).
8392
-2011-05-20 Joseph Myers <joseph@codesourcery.com>
8394
- * gcc-interface/Make-lang.in (EXTRA_GNATBIND_OBJS): Remove version.o.
8395
- * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use libcommon.a
8396
- instead of version.o.
8398
-2011-05-18 Kai Tietz <ktietz@redhat.com>
8400
- * gcc-interface/trans.c (Exception_Handler_to_gnu_sjlj): Use
8401
- boolean_false_node instead of integer_zero_node.
8402
- (convert_with_check): Likewise.
8403
- * gcc-interface/decl.c (choices_to_gnu): Likewise.
8405
-2011-05-12 Eric Botcazou <ebotcazou@adacore.com>
8407
- * gcc-interface/trans.c (call_to_gnu): In the by-reference case, if the
8408
- type of the parameter is an unconstrained array, convert the actual to
8409
- the type of the formal in the In Out and Out cases as well.
8411
-2011-05-11 Nathan Froyd <froydnj@codesourcery.com>
8413
- * gcc-interface/utils.c (def_fn_type): Don't call build_function_type;
8414
- call build_function_type_array or build_varargs_function_type_array
8416
- (create_subprog_type): Don't call build_function_type; call
8417
- build_function_type_vec instead.
8419
-2011-05-11 Nathan Froyd <froydnj@codesourcery.com>
8421
- * gcc-interface/ada-tree.h (TYPE_OBJECT_RECORD_TYPE): Use TYPE_MINVAL.
8422
- (TYPE_GCC_MIN_VALUE): Use TYPE_MINVAL.
8423
- (TYPE_GCC_MAX_VALUE): Use TYPE_MAXVAL.
8425
-2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
8427
- * gcc-interface/decl.c (intrin_arglists_compatible_p): Remove spaces.
8429
- * gcc-interface/gigi.h (global_bindings_p): Adjust prototype.
8430
- * gcc-interface/utils.c (global_bindings_p): Return bool and simplify.
8432
-2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
8434
- * gcc-interface/trans.c (Case_Statement_to_gnu): Call build_case_label.
8436
-2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
8438
- * gcc-interface/decl.c (intrin_arglists_compatible_p): Use iterators
8439
- instead of accessing TYPE_ARG_TYPES directly.
8440
- * gcc-interface/utils.c (handle_nonnull_attribute): Likewise.
8442
-2011-05-05 Eric Botcazou <ebotcazou@adacore.com>
8445
- * gcc-interface/gigi.h (get_variant_part): Declare.
8446
- * gcc-interface/decl.c (get_variant_part): Make global.
8447
- * gcc-interface/utils2.c (find_common_type): Do not return T1 if the
8448
- types have the same constant size, are record types and T1 has a
8449
- variant part while T2 doesn't.
8451
-2011-05-05 Eric Botcazou <ebotcazou@adacore.com>
8453
- * gcc-interface/utils.c (begin_subprog_body): Do not call
8454
- get_pending_sizes.
8455
- (end_subprog_body): Likewise.
8457
-2011-05-04 Richard Guenther <rguenther@suse.de>
8459
- * gcc-interface/trans.c (gnat_to_gnu): Remove zero notrunc argument to
8461
- (pos_to_constructor): Likewise.
8463
-2011-05-03 Nathan Froyd <froydnj@codesourcery.com>
8464
- Eric Botcazou <ebotcazou@adacore.com>
8466
- * gcc-interface/trans.c (gigi): Call build_function_type_list instead
8467
- of build_function_type. Adjust calls to...
8468
- (build_raise_check): ...this. Do not take a void_tree parameter.
8469
- Call build_function_type_list instead of build_function_type.
8470
- Fix head comment and swap couple of conditional blocks.
8472
-2011-04-30 Eric Botcazou <ebotcazou@adacore.com>
8474
- * gnatvsn.ads (Library_Version): Bump to 4.7.
8475
- (Current_Year): Bump to 2011.
8477
-2011-04-29 Michael Matz <matz@suse.de>
8479
- * gcc-interface/misc.c (gnat_handle_option): Set
8480
- warn_maybe_uninitialized.
8482
-2011-04-23 Gerald Pfeifer <gerald@pfeifer.com>
8484
- * gnat_ugn.texi (Complexity Metrics Control): Update link to
8485
- the Watson/McCabe paper.
8487
-2011-04-23 Jim Meyering <meyering@redhat.com>
8489
- * gnat_ugn.texi (Examples of gnatxref Usage): Fix typo: s/it it/it is/
8491
-2011-04-22 Eric Botcazou <ebotcazou@adacore.com>
8493
- * gcc-interface/decl.c (make_packable_type): Copy DECL_PARALLEL_TYPE
8494
- onto the new type.
8496
-2011-04-22 Eric Botcazou <ebotcazou@adacore.com>
8498
- * gcc-interface/gigi.h (create_subprog_decl): Add ARTIFICIAL_FLAG
8500
- * gcc-interface/utils.c (create_subprog_decl): Likewise. Set
8501
- DECL_ARTIFICIAL and DECL_NO_INLINE_WARNING_P on the DECL accordingly.
8502
- * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Add
8503
- ARTIFICIAL_FLAG local variable and pass it to create_subprog_decl.
8504
- <all>: Do not set flags on the reused DECL node coming from an alias.
8505
- Set DECL_IGNORED_P on the DECL node built for subprograms if they
8506
- don't need debug info here...
8507
- * gcc-interface/trans.c (Subprogram_Body_to_gnu): ...and not here.
8508
- (gigi): Adjust calls to create_subprog_decl.
8509
- (build_raise_check): Likewise.
8510
- (establish_gnat_vms_condition_handler): Likewise.
8511
- (Compilation_Unit_to_gnu): Likewise.
8512
- (gnat_to_gnu): Likewise.
8514
-2011-04-21 Eric Botcazou <ebotcazou@adacore.com>
8516
- * gcc-interface/Makefile.in (NO_SIBLING_ADAFLAGS): Always define.
8517
- (NO_REORDER_ADAFLAGS): New variable.
8518
- (EXTRA_GNATTOOLS): Always define.
8519
- (../stamp-gnatlib1-$(RTSDIR): Copy tsystem.h.
8520
- Clean up and adjust list of files compiled with special options.
8521
- * gcc-interface/Make-lang.in: Likewise.
8522
- (ada/decl.o): Cosmetical change.
8523
- (ada/misc.o): Remove dependency on $(PLUGIN_H).
8525
-2011-04-20 Jim Meyering <meyering@redhat.com>
8527
- * initialize.c (__gnat_initialize): Remove useless if-before-free.
8529
-2011-04-17 Eric Botcazou <ebotcazou@adacore.com>
8531
- * gcc-interface/Make-lang.in (gnatbind): Replace $(ALL_CFLAGS) with
8532
- $(CFLAGS) on the link line.
8534
-2011-04-17 Eric Botcazou <ebotcazou@adacore.com>
8536
- * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Declare the
8537
- padded type built for the return type if it is unconstrained.
8539
-2011-04-14 Nathan Froyd <froydnj@codesourcery.com>
8541
- * gcc-interface/utils.c (gnat_poplevel): Use block_chainon.
8543
-2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
8545
- * gcc-interface/ada-tree.h (union lang_tree_node): Check for TS_COMMON
8546
- before calling TREE_CHAIN.
8547
- * gcc-interface/misc.c (gnat_init_ts): New function.
8548
- (LANG_HOOKS_INIT_TS): Define.
8550
-2011-04-12 Martin Jambor <mjambor@suse.cz>
8552
- * gcc-interface/utils.c (end_subprog_body): Call cgraph_get_create_node
8553
- instead of cgraph_node.
8555
-2011-04-08 Eric Botcazou <ebotcazou@adacore.com>
8557
- * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Set minimum
8558
- alignment on fields of the RETURN type built for the Copy-In Copy-Out
8561
-2011-04-08 Eric Botcazou <ebotcazou@adacore.com>
8563
- * gcc-interface/trans.c (Identifier_to_gnu): Do not return initializers
8564
- of aggregate types that contain a placeholder.
8566
-2011-04-08 Nathan Froyd <froydnj@codesourcery.com>
8568
- * gcc-interface/utils.c (handle_sentinel_attribute): Don't use
8570
- (handle_type_generic_attribute): Likewise.
8572
-2011-04-04 Eric Botcazou <ebotcazou@adacore.com>
8575
- * s-oscons-tmplt.c (MSG_WAITALL): Fix thinko in previous change.
8577
-2011-04-04 Kai Tietz <ktietz@redhat.com>
8580
- * s-oscons-tmplt.c (MSG_WAITALL): Define it for native windows targets
8583
-2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
8585
- * gcc-interface/utils2.c (build_allocator): In the unconstrained array
8586
- type case, do not strip a padding type around the array type.
8588
-2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
8590
- * gcc-interface/utils.c (update_pointer_to): Finalize named pointer
8593
-2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
8595
- * gcc-interface/lang.opt (feliminate-unused-debug-types): Delete.
8596
- * gcc-interface/misc.c (gnat_handle_option): Remove special handling
8597
- code for -feliminate-unused-debug-types.
8598
- (gnat_post_options): Likewise.
8600
-2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
8602
- * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
8603
- declaration of a pointer type, then set DECL_ORIGINAL_TYPE to a
8606
-2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
8608
- * gcc-interface/decl.c (gnat_to_gnu_entity): Do not force the
8609
- DECL_ARTIFICIAL flag on enumeration types.
8611
-2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
8613
- * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not make
8614
- fat pointer types artificial unconditionally.
8615
- <E_Array_Subtype>: Attach the base array type as a parallel type if it
8618
-2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
8620
- * gcc-interface/gigi.h (get_dummy_type): Declare.
8621
- (build_dummy_unc_pointer_types): Likewise.
8622
- (finish_fat_pointer_type): Likewise.
8623
- * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If a dummy
8624
- fat pointer type has been built, complete it in place.
8625
- <E_Access_Type>: Call build_dummy_unc_pointer_types to build dummy fat
8626
- and thin pointers. Remove useless variable.
8627
- (finish_fat_pointer_type): Make global and move to...
8628
- * gcc-interface/utils.c (finish_fat_pointer_type): ...here.
8629
- (get_dummy_type): New function.
8630
- (build_dummy_unc_pointer_types): Likewise.
8631
- (gnat_pushdecl): Propage the name to the anonymous variants only.
8632
- (update_pointer_to): Only adjust the pointer types in the unconstrained
8635
-2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
8637
- * gcc-interface/ada-tree.h (DECL_TAFT_TYPE_P): New flag.
8638
- * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Incomplete_Type>: Set it
8639
- if this is a Taft amendment type and the full declaration is available.
8640
- * gcc-interface/trans.c (process_type): Likewise.
8641
- If there is an old type, mark the new one as used if DECL_TAFT_TYPE_P.
8642
- (process_freeze_entity): Likewise.
8643
- * gcc-interface/utils.c (dummy_global): New static variable.
8644
- (gnat_write_global_declarations): If there are types declared as used
8645
- at the global level, insert them in the global hash table.
8647
-2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
8649
- * gcc-interface/gigi.h (record_builtin_type): Add ARTIFICIAL_P param.
8650
- * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
8651
- declaration of an array type, then set DECL_ORIGINAL_TYPE to a distinct
8653
- (record_builtin_type): Add ARTIFICIAL_P parameter. Set DECL_ARTIFICIAL
8654
- flag of the type accordingly.
8655
- * gcc-interface/trans.c (gigi): Adjust calls to record_builtin_type.
8657
-2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
8659
- * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
8660
- finalizing types when updating the pointers to the designated type.
8661
- <all>: Finalize the deferred types even if we didn't defer processing
8662
- of incomplete types in this invocation.
8664
-2011-04-01 Olivier Hainque <hainque@adacore.com>
8665
- Nicolas Setton <setton@adacore.com>
8666
- Eric Botcazou <ebotcazou@adacore.com>
8668
- * gcc-interface/misc.c (gnat_descriptive_type): New function.
8669
- (LANG_HOOKS_DESCRIPTIVE_TYPE): Redefine to gnat_descriptive_type.
8671
-2011-03-28 Kai Tietz <ktietz@redhat.com>
8673
- * gcc-interface/Makefile.in (SO_LIB): Handle multilib build for native
8675
- (EH_MECHANISM): Use GCC exception mechanism for native Windows targets.
8676
- * system-mingw.ads (System): Change ZCX_By_Default default to True.
8678
- * raise-gcc.c (PERSONALITY_FUNCTION): Add prototype.
8680
-2011-03-28 Tristan Gingold <gingold@adacore.com>
8683
- * gcc-interface/Make-lang.in (ada/b_gnat1.adb): Replace ada/b_gnat1.c.
8684
- Use ada output of gnatbind.
8685
- (ada/b_gnatb.adb): Ditto.
8686
- (ada/b_gnat1.o, ada/b_gnatb.o): New rules.
8687
- (ada.mostlyclean, ada.stage1)
8688
- (ada.stage2, ada.stage3, ada.stage4, ada.stageprofile)
8689
- (ada.stagefeedback): Adjust.
8690
- * gcc-interface/Makefile.in (b_gnatl.adb): Replace b_gnatl.c.
8691
- Use ada output of gnatbind.
8692
- (b_gnatm.adb): Ditto.
8693
- (b_gnatl.o, b_gnatm.o): New rules.
8695
-2011-03-26 Eric Botcazou <ebotcazou@adacore.com>
8697
- * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
8698
- for the padded type built to support a specified size or alignment.
8700
-2011-03-26 Eric Botcazou <ebotcazou@adacore.com>
8702
- * gcc-interface/gigi.h (finalize_from_with_types): Adjust comment.
8703
- * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
8704
- unconditionally to the end of the unit when the designated type is
8706
- <all>: Rename local variable. Attempt to un-defer types only and do it
8707
- for limited_with'ed types as well.
8708
- (finalize_from_with_types): Adjust comment. Rename variable and tidy.
8709
- * gcc-interface/trans.c (Compilation_Unit_to_gnu): Use GNAT_UNIT
8710
- consistently and remove redundant call to finalize_from_with_types.
8712
-2011-03-26 Eric Botcazou <ebotcazou@adacore.com>
8714
- * inline.adb (Back_End_Cannot_Inline): Lift restriction on calls to
8715
- subprograms without a previous spec declared in the same unit.
8716
- * gcc-interface/trans.c (Compilation_Unit_to_gnu): Process inlined
8717
- subprograms at the end of the unit instead of at the beginning.
8718
- * gcc-interface/utils.c (create_subprog_decl): Check that the entity
8719
- isn't public for the special handling of non-inline functions nested
8720
- inside inline external functions.
8722
-2011-03-25 Jeff Law <law@redhat.com>
8724
- * gcc-interface/utils.c (def_fn_type): Add missing va_end.
8726
-2011-03-24 Eric Botcazou <ebotcazou@adacore.com>
8728
- * einfo.ads (Size_Depends_On_Discriminant): Adjust description.
8729
- * layout.adb (Compute_Size_Depends_On_Discriminant): New procedure
8730
- to compute Set_Size_Depends_On_Discriminant.
8731
- (Layout_Type): Call it on array types in back-end layout mode.
8732
- * sem_util.adb (Requires_Transient_Scope): Return true for array
8733
- types only if the size depends on the value of discriminants.
8734
- * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Use the RHS
8735
- type if the RHS is a call to a function that returns an unconstrained
8736
- type with default discriminant.
8738
-2011-03-24 Eric Botcazou <ebotcazou@adacore.com>
8740
- * gcc-interface/trans.c (gnat_to_gnu): Remove obsolete case of
8741
- non-conversion to the nominal result type at the end.
8743
-2011-03-23 Eric Botcazou <ebotcazou@adacore.com>
8745
- * gcc-interface/trans.c (create_temporary): New function taken from...
8746
- (create_init_temporary): ...here. Call it.
8747
- (call_to_gnu): Create the temporary for the return value early, if any.
8748
- Create it for a function with copy-in/copy-out parameters if there is
8749
- no target; in other cases of copy-in/copy-out, use another temporary.
8750
- Push the new binding level lazily. Add and rename local variables.
8752
-2011-03-23 Eric Botcazou <ebotcazou@adacore.com>
8754
- * gcc-interface/decl.c (validate_size): Improve comments and tweak
8756
- (set_rm_size): Likewise.
8758
-2011-03-23 Eric Botcazou <ebotcazou@adacore.com>
8760
- * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
8761
- for the padded type built in order to support a specified alignment.
8762
- Fix incorrect formatting.
8764
-2011-03-21 Eric Botcazou <ebotcazou@adacore.com>
8766
- PR bootstrap/48216
8767
- * gcc-interface/decl.c (elaborate_expression_1): Localize GNU_DECL.
8769
-2011-03-21 Eric Botcazou <ebotcazou@adacore.com>
8771
- * gcc-interface/decl.c (components_to_record): Add REORDER parameter,
8772
- rename DEBUG_INFO_P into DEBUG_INFO and move P_GNU_REP_LIST parameter
8773
- to the end of the list. Adjust recursive call. Rename local variable.
8774
- If REORDER is true, reorder components of the record type.
8775
- (gnat_to_gnu_entity): Pass OK_To_Reorder_Components flag as argument to
8776
- components_to_record and adjust the parameter list.
8778
-2011-03-21 Eric Botcazou <ebotcazou@adacore.com>
8780
- * gcc-interface/decl.c (elaborate_expression_1): When optimization is
8781
- disabled, use the variable for bounds of loop iteration scheme.
8783
-2011-03-21 Kai Tietz <ktietz@redhat.com>
8786
- * gcc-interface/utils.c (gnat_internal_attribute_table): Add column.
8788
-2011-03-17 Eric Botcazou <ebotcazou@adacore.com>
8790
- * gcc-interface/decl.c (elaborate_expression_1): Try harder to find
8791
- out whether the expression is read-only. Short-circuit placeholder
8792
- case and rename a couple of local variables.
8794
-2011-03-17 Eric Botcazou <ebotcazou@adacore.com>
8796
- * gcc-interface/gigi.h (smaller_form_type_p): Declare.
8797
- * gcc-interface/trans.c (smaller_form_type_p): Make global and move...
8798
- * gcc-interface/utils.c (smaller_form_type_p): ...to here.
8799
- (convert): Deal with conversions from a smaller form type specially.
8801
-2011-02-14 Eric Botcazou <ebotcazou@adacore.com>
8803
- * gcc-interface/misc.c (gnat_init_options): Do not concatenate -I and
8804
- its argument, except for the special -I- switch.
8806
-2011-02-12 Gerald Pfeifer <gerald@pfeifer.com>
8808
- * gnat_ugn.texi (Compiling Different Versions of Ada): Update link to
8811
-2011-02-08 Eric Botcazou <ebotcazou@adacore.com>
8813
- * gcc-interface/Makefile.in (x86-64 darwin): Handle multilibs.
8815
-2011-02-03 Eric Botcazou <ebotcazou@adacore.com>
8817
- * gcc-interface/gigi.h (fill_vms_descriptor): Take GNU_TYPE instead of
8819
- * gcc-interface/utils2.c (fill_vms_descriptor): Move from here to...
8820
- * gcc-interface/utils.c (fill_vms_descriptor): ...here. Take GNU_TYPE
8821
- instead of GNAT_FORMAL. Protect the expression against multiple uses.
8822
- Do not generate the check directly, instead instantiate the template
8823
- check present in the descriptor.
8824
- (make_descriptor_field): Move around.
8825
- (build_vms_descriptor32): Build a template check in the POINTER field.
8826
- (build_vms_descriptor): Remove useless suffixes.
8827
- * gcc-interface/trans.c (call_to_gnu): Adjust fill_vms_descriptor call.
8829
-2011-01-26 Eric Botcazou <ebotcazou@adacore.com>
8831
- PR bootstrap/47467
8832
- * targext.c: Include target files if IN_RTS is defined.
8834
-2011-01-26 Richard Guenther <rguenther@suse.de>
8836
- PR bootstrap/47467
8837
- * targext.c: Include config.h.
8838
- * gcc-interface/Make-lang.in (ada/targext.o): Add $(CONFIG_H)
8841
-2011-01-04 Pascal Obry <obry@adacore.com>
8842
- Eric Botcazou <ebotcazou@adacore.com>
8844
- * gcc-interface/decl.c: Disable Stdcall convention handling for 64-bit.
8846
-2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
8848
- * gcc-interface/trans.c (Case_Statement_to_gnu): Put the SLOC of the
8849
- end-of-case on the end label and its associated gotos, if any.
8851
-2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
8853
- * gcc-interface/trans.c (Subprogram_Body_to_gnu): Evaluate the
8854
- expressions of the parameter cache within the statement group of
8855
- the CICO mechanism.
8857
-2011-01-04 Olivier Hainque <hainque@adacore.com>
8858
- Eric Botcazou <ebotcazou@adacore.com>
8860
- * gcc-interface/trans.c (BLOCK_SOURCE_END_LOCATION): Provide default.
8861
- (set_end_locus_from_node): New function.
8862
- (Subprogram_Body_to_gnu): Use it to mark both the inner BIND_EXPR we
8863
- make and the function end_locus.
8864
- (Compilation_Unit_to_gnu): Call it instead of a straight Sloc_to_locus
8865
- for the elaboration subprogram.
8866
- (set_gnu_expr_location_from_node) <default case>: Use it to attempt to
8867
- set the end_locus of the expression as well.
8869
-2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
8872
- * gcc-interface/trans.c (Identifier_to_gnu): In SJLJ mode, do not make
8873
- variables that are referenced in exception handlers volatile.
8877
-Copyright (C) 2011 Free Software Foundation, Inc.
8879
-Copying and distribution of this file, with or without modification,
8880
-are permitted in any medium without royalty provided the copyright
8881
-notice and this notice are preserved.
1722
8882
Index: gcc/fortran/trans-array.c
1723
8883
===================================================================
1724
8884
--- a/src/gcc/fortran/trans-array.c (revision