blob: e7a57d31c253915a8ad32cf581733910df832d2a [file] [log] [blame]
<html lang="en">
<head>
<title>Checks - Debugging with GDB</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Debugging with GDB">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Languages.html#Languages" title="Languages">
<link rel="prev" href="Show.html#Show" title="Show">
<link rel="next" href="Supported-Languages.html#Supported-Languages" title="Supported Languages">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``Free Software'' and ``Free Software Needs
Free Documentation'', with the Front-Cover Texts being ``A GNU Manual,''
and with the Back-Cover Texts as in (a) below.
(a) The FSF's Back-Cover Text is: ``You are free to copy and modify
this GNU Manual. Buying copies from GNU Press supports the FSF in
developing GNU and promoting software freedom.''-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
pre.display { font-family:inherit }
pre.format { font-family:inherit }
pre.smalldisplay { font-family:inherit; font-size:smaller }
pre.smallformat { font-family:inherit; font-size:smaller }
pre.smallexample { font-size:smaller }
pre.smalllisp { font-size:smaller }
span.sc { font-variant:small-caps }
span.roman { font-family:serif; font-weight:normal; }
span.sansserif { font-family:sans-serif; font-weight:normal; }
--></style>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="Checks"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Supported-Languages.html#Supported-Languages">Supported Languages</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Show.html#Show">Show</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Languages.html#Languages">Languages</a>
<hr>
</div>
<h3 class="section">15.3 Type and Range Checking</h3>
<blockquote>
<em>Warning:</em> In this release, the <span class="sc">gdb</span> commands for type and range
checking are included, but they do not yet have any effect. This
section documents the intended facilities.
</blockquote>
<!-- FIXME remove warning when type/range code added -->
<p>Some languages are designed to guard you against making seemingly common
errors through a series of compile- and run-time checks. These include
checking the type of arguments to functions and operators, and making
sure mathematical overflows are caught at run time. Checks such as
these help to ensure a program's correctness once it has been compiled
by eliminating type mismatches, and providing active checks for range
errors when your program is running.
<p><span class="sc">gdb</span> can check for conditions like the above if you wish.
Although <span class="sc">gdb</span> does not check the statements in your program,
it can check expressions entered directly into <span class="sc">gdb</span> for
evaluation via the <code>print</code> command, for example. As with the
working language, <span class="sc">gdb</span> can also decide whether or not to check
automatically based on your program's source language.
See <a href="Supported-Languages.html#Supported-Languages">Supported Languages</a>, for the default
settings of supported languages.
<ul class="menu">
<li><a accesskey="1" href="Type-Checking.html#Type-Checking">Type Checking</a>: An overview of type checking
<li><a accesskey="2" href="Range-Checking.html#Range-Checking">Range Checking</a>: An overview of range checking
</ul>
<p><a name="index-type-checking-785"></a><a name="index-checks_002c-type-786"></a>
</body></html>