summaryrefslogtreecommitdiff
path: root/gcc/ada/scos.ads
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2010-06-18 09:53:00 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2010-06-18 09:53:00 +0000
commit79d59c5e0601fbd6a1a0b6e41bfe5766f6de90d9 (patch)
tree364d9ffedf372b96525952d1fdac74e0d4096065 /gcc/ada/scos.ads
parente977c0cf76179b3df7859a44eb3684f2b8ba1d84 (diff)
downloadgcc-79d59c5e0601fbd6a1a0b6e41bfe5766f6de90d9.tar.gz
2010-06-18 Thomas Quinot <quinot@adacore.com>
* types.ads: Clean up obsolete comments * tbuild.adb: Minor reformatting. * exp_ch5.adb, sem_intr.adb, sem_ch10.adb, rtsfind.adb, s-shasto.adb, exp_strm.adb, aa_drive.adb: Minor reformatting. * sem_res.adb (Is_Predefined_Operator): An operator that is an imported intrinsic with an Interface_Name denotes an imported back-end builtin, and must be rewritten into a call, not left in the tree as an operator, so return False in that case. 2010-06-18 Eric Botcazou <ebotcazou@adacore.com> * exp_util.adb (Remove_Side_Effects): Make a copy for an allocator. 2010-06-18 Robert Dewar <dewar@adacore.com> * scos.ads: Add proposed output for case expression 2010-06-18 Jose Ruiz <ruiz@adacore.com> * gnat_ugn.texi: Document that, when using the RTX compiler to generate RTSS modules, we need to use the Microsoft linker. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160974 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/scos.ads')
-rw-r--r--gcc/ada/scos.ads25
1 files changed, 21 insertions, 4 deletions
diff --git a/gcc/ada/scos.ads b/gcc/ada/scos.ads
index dc02e28c5e0..ce865d77587 100644
--- a/gcc/ada/scos.ads
+++ b/gcc/ada/scos.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 2009, Free Software Foundation, Inc. --
+-- Copyright (C) 2009-2010, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -161,9 +161,9 @@ package SCOs is
-- and is omitted for all other cases.
- -- Note: up to 6 entries can appear on a single CS line. If more than 6
- -- entries appear in one logical statement sequence, continuation lines are
- -- marked by Cs and appear immediately after the CS line they continue.
+ -- Note: up to 6 entries can appear on a single CS line. If more than 6
+ -- entries appear in one logical statement sequence, continuation lines
+ -- are marked by Cs and appear immediately after the CS line.
-- Decisions
@@ -272,6 +272,23 @@ package SCOs is
-- enclosing statement. The SCO line for a nested decision always occurs
-- after the line for the enclosing decision.
+ -- Case Expressions
+
+ -- For case statements, we rely on statement coverage to make sure that
+ -- all branches of a case statement are covered, but that does not work
+ -- for case expressions, since the entire expression is contained in a
+ -- single statement. However, for complete coverage we really should be
+ -- able to check that every branch of the case statement is covered, so
+ -- we generate a SCO of the form:
+
+ -- CC sloc-range sloc-range ...
+
+ -- where sloc-range covers the range of the case expression.
+
+ -- Note: up to 6 entries can appear on a single CC line. If more than 6
+ -- entries appear in one logical statement sequence, continuation lines
+ -- are marked by Cc and appear immediately after the CC line.
+
---------------------------------------------------------------------
-- Internal table used to store Source Coverage Obligations (SCOs) --
---------------------------------------------------------------------