diff options
author | upstream source tree <ports@midipix.org> | 2015-03-15 20:14:05 -0400 |
---|---|---|
committer | upstream source tree <ports@midipix.org> | 2015-03-15 20:14:05 -0400 |
commit | 554fd8c5195424bdbcabf5de30fdc183aba391bd (patch) | |
tree | 976dc5ab7fddf506dadce60ae936f43f58787092 /gcc/testsuite/ada/acats/tests/cxb/cxb30130.c | |
download | cbb-gcc-4.6.4-554fd8c5195424bdbcabf5de30fdc183aba391bd.tar.bz2 cbb-gcc-4.6.4-554fd8c5195424bdbcabf5de30fdc183aba391bd.tar.xz |
obtained gcc-4.6.4.tar.bz2 from upstream website;upstream
verified gcc-4.6.4.tar.bz2.sig;
imported gcc-4.6.4 source tree from verified upstream tarball.
downloading a git-generated archive based on the 'upstream' tag
should provide you with a source tree that is binary identical
to the one extracted from the above tarball.
if you have obtained the source via the command 'git clone',
however, do note that line-endings of files in your working
directory might differ from line-endings of the respective
files in the upstream repository.
Diffstat (limited to 'gcc/testsuite/ada/acats/tests/cxb/cxb30130.c')
-rw-r--r-- | gcc/testsuite/ada/acats/tests/cxb/cxb30130.c | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/gcc/testsuite/ada/acats/tests/cxb/cxb30130.c b/gcc/testsuite/ada/acats/tests/cxb/cxb30130.c new file mode 100644 index 000000000..57662a323 --- /dev/null +++ b/gcc/testsuite/ada/acats/tests/cxb/cxb30130.c @@ -0,0 +1,86 @@ +/* +-- CXB30130.C +-- +-- Grant of Unlimited Rights +-- +-- Under contracts F33600-87-D-0337, F33600-84-D-0280, MDA903-79-C-0687, +-- F08630-91-C-0015, and DCA100-97-D-0025, the U.S. Government obtained +-- unlimited rights in the software and documentation contained herein. +-- Unlimited rights are defined in DFAR 252.227-7013(a)(19). By making +-- this public release, the Government intends to confer upon all +-- recipients unlimited rights equal to those held by the Government. +-- These rights include rights to use, duplicate, release or disclose the +-- released technical data and computer software in whole or in part, in +-- any manner and for any purpose whatsoever, and to have or permit others +-- to do so. +-- +-- DISCLAIMER +-- +-- ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR +-- DISCLOSED ARE AS IS. THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED +-- WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE +-- SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE +-- OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A +-- PARTICULAR PURPOSE OF SAID MATERIAL. +--* +-- +-- FUNCTION NAME: CXB30130 ("square_it") +-- +-- FUNCTION DESCRIPTION: +-- This C function returns the square of num1 through the function +-- name, and returns the square of parameters num2, num3, and num4 +-- through the argument list (modifying the objects pointed to by +-- the parameters). +-- +-- INPUTS: +-- This function requires that four parameters be passed to it. +-- The types of these parameters are, in order: int, pointer to short, +-- pointer to float, and pointer to double. +-- +-- PROCESSING: +-- The function will calculate the square of the int parameter (num1), +-- and return this value as the function result through the function +-- name. The function will also calculate the square of the values +-- pointed to by the remaining three parameters (num2, num3, num4), +-- and will modify the referenced memory locations to contain the +-- squared values. +-- +-- OUTPUTS: +-- The square of num1 is returned through function name. +-- Parameters num2-num4 now point to values that are the squared results +-- of the originally referenced values (i.e., the original values are +-- modified as a result of this function). +-- +-- CHANGE HISTORY: +-- 12 Oct 95 SAIC Initial prerelease version. +-- +--! +*/ + +int CXB30130 (int num1, short* num2, float* num3, double* num4) + +/* NOTE: The above function definition should be accepted by an ANSI-C */ +/* compiler. Older C compilers may reject it; they may, however */ +/* accept the following five lines. An implementation may comment */ +/* out the above function definition and uncomment the following */ +/* one. Otherwise, an implementation must provide the necessary */ +/* modifications to this C code to satisfy the function */ +/* requirements (see Function Description). */ +/* */ +/* int CXB30130 (num1, num2, num3, num4) */ +/* int num1; */ +/* short* num2; */ +/* float* num3; */ +/* double* num4; */ +/* */ + +{ + int return_value = 0; + + return_value = num1 * num1; + *num2 = *num2 * *num2; /* Return square of these parameters through */ + *num3 = *num3 * *num3; /* the parameter list. */ + *num4 = *num4 * *num4; + + return (return_value); /* Return square of num1 through function name */ +} |