1
1
Submitted by: Dan Lacher

This commit was SVN r12844.
Этот коммит содержится в:
Dan Lacher 2006-12-13 20:01:16 +00:00
родитель 7b8f445e13
Коммит e3f749acc4
3 изменённых файлов: 23 добавлений и 9 удалений

Просмотреть файл

@ -9,6 +9,7 @@
* University of Stuttgart. All rights reserved. * University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California. * Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved. * All rights reserved.
* Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow
@ -37,9 +38,13 @@ int MPI_Type_create_f90_complex(int p, int r, MPI_Datatype *newtype)
{ {
if (MPI_PARAM_CHECK) { if (MPI_PARAM_CHECK) {
OMPI_ERR_INIT_FINALIZE(FUNC_NAME); OMPI_ERR_INIT_FINALIZE(FUNC_NAME);
if ((MPI_UNDEFINED == p && MPI_UNDEFINED == r) ||
(p < 0 && MPI_UNDEFINED != p) || /* Note: These functions accept negative integers for the p and r
(r < 0 && MPI_UNDEFINED != r)) { * arguments. This is because for the SELECTED_COMPLEX_KIND,
* negative numbers are equivalent to zero values. See section
* 13.14.95 of the Fortran 95 standard. */
if ((MPI_UNDEFINED == p && MPI_UNDEFINED == r)) {
return OMPI_ERRHANDLER_INVOKE(MPI_COMM_WORLD, MPI_ERR_ARG, FUNC_NAME); return OMPI_ERRHANDLER_INVOKE(MPI_COMM_WORLD, MPI_ERR_ARG, FUNC_NAME);
} }
} }

Просмотреть файл

@ -9,6 +9,7 @@
* University of Stuttgart. All rights reserved. * University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California. * Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved. * All rights reserved.
* Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow
@ -36,9 +37,12 @@ int MPI_Type_create_f90_integer(int r, MPI_Datatype *newtype)
{ {
if (MPI_PARAM_CHECK) { if (MPI_PARAM_CHECK) {
OMPI_ERR_INIT_FINALIZE(FUNC_NAME); OMPI_ERR_INIT_FINALIZE(FUNC_NAME);
if (r < 0) {
return OMPI_ERRHANDLER_INVOKE(MPI_COMM_WORLD, MPI_ERR_ARG, FUNC_NAME); /* Note: These functions accept negative integers for the p and r
} * arguments. This is because for the SELECTED_INTEGER_KIND,
* negative numbers are equivalent to zero values. See section
* 13.14.95 of the Fortran 95 standard. */
} }
if (r > 38) *newtype = &ompi_mpi_datatype_null; if (r > 38) *newtype = &ompi_mpi_datatype_null;

Просмотреть файл

@ -9,6 +9,7 @@
* University of Stuttgart. All rights reserved. * University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California. * Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved. * All rights reserved.
* Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow
@ -38,9 +39,13 @@ int MPI_Type_create_f90_real(int p, int r, MPI_Datatype *newtype)
{ {
if (MPI_PARAM_CHECK) { if (MPI_PARAM_CHECK) {
OMPI_ERR_INIT_FINALIZE(FUNC_NAME); OMPI_ERR_INIT_FINALIZE(FUNC_NAME);
if ((MPI_UNDEFINED == p && MPI_UNDEFINED == r) ||
(p < 0 && MPI_UNDEFINED != p) || /* Note: These functions accept negative integers for the p and r
(r < 0 && MPI_UNDEFINED != r)) { * arguments. This is because for the SELECTED_REAL_KIND,
* negative numbers are equivalent to zero values. See section
* 13.14.95 of the Fortran 95 standard. */
if ((MPI_UNDEFINED == p && MPI_UNDEFINED == r)) {
return OMPI_ERRHANDLER_INVOKE(MPI_COMM_WORLD, MPI_ERR_ARG, FUNC_NAME); return OMPI_ERRHANDLER_INVOKE(MPI_COMM_WORLD, MPI_ERR_ARG, FUNC_NAME);
} }
} }