]> git.proxmox.com Git - mirror_edk2.git/blobdiff - StdLib/Include/setjmp.h
StdLib: Remove EfiSocketLib and Ip4Config Protocol dependency.
[mirror_edk2.git] / StdLib / Include / setjmp.h
index ed691e654ddc474a7aa5d582789f44c183b85e93..33ea161799aa12204536e493ea3bf69696ce8d89 100644 (file)
@@ -1,16 +1,15 @@
 /** @file\r
-  The header <setjmp.h> defines the macro setjmp, and declares one function\r
-  and one type, for bypassing the normal function call and return discipline.\r
+    This file defines the macro setjmp, and declares the function longjmp\r
+    and the type jmp_buf, for bypassing the normal function call and return discipline.\r
 \r
-Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials are licensed and made available under\r
-the terms and conditions of the BSD License that accompanies this distribution.\r
-The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php.\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+    Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>\r
+    This program and the accompanying materials are licensed and made available under\r
+    the terms and conditions of the BSD License that accompanies this distribution.\r
+    The full text of the license may be found at\r
+    http://opensource.org/licenses/bsd-license.\r
 \r
+    THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+    WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 **/\r
 #ifndef _SETJMP_H\r
 #define _SETJMP_H\r
@@ -40,7 +39,8 @@ typedef BASE_LIBRARY_JUMP_BUFFER jmp_buf[1];
 \r
     @return   If the return is from a direct invocation, the setjmp macro\r
     returns the value zero. If the return is from a call to the longjmp\r
-    function, the setjmp macro returns a nonzero value.\r
+    function, the setjmp macro returns a nonzero value based upon the value\r
+    of the second argument to the longjmp function.\r
 **/\r
 #define setjmp(env)   (INTN)SetJump((env))\r
 \r
@@ -52,7 +52,10 @@ typedef BASE_LIBRARY_JUMP_BUFFER jmp_buf[1];
     macro was within the scope of an identifier with variably modified type and\r
     execution has left that scope in the interim, the behavior is undefined.\r
 \r
-    After longjmp is completed, program execution continues as if the\r
+    @param[in]    env     The jump buffer containing the environment to be returned to.\r
+    @param[in]    val     A non-zero value to be returned from setjmp.\r
+\r
+    @return     After longjmp is completed, program execution continues as if the\r
     corresponding invocation of the setjmp macro had just returned the value\r
     specified by val. The longjmp function cannot cause the setjmp macro to\r
     return the value 0; if val is 0, the setjmp macro returns the value 1.\r