Fix tutorials: typo in tutorials/viscoelastic/viscoelasticFluidFoam/S-MDCPP/constant...
[OpenFOAM-1.6-ext.git] / src / OpenFOAM / global / new.C
blobdd6c188aebb1bd7366c28b920fdd7ffcfe07c3e6
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright held by original author
6      \\/     M anipulation  |
7 -------------------------------------------------------------------------------
8 License
9     This file is part of OpenFOAM.
11     OpenFOAM is free software; you can redistribute it and/or modify it
12     under the terms of the GNU General Public License as published by the
13     Free Software Foundation; either version 2 of the License, or (at your
14     option) any later version.
16     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
19     for more details.
21     You should have received a copy of the GNU General Public License
22     along with OpenFOAM; if not, write to the Free Software Foundation,
23     Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
25 Description
26     Setup an error handler for the global new operator
28 \*---------------------------------------------------------------------------*/
30 #include <new>
31 #include <iostream>
32 #include <cstdlib>
34 namespace Foam
37 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
39 void newError()
41     std::cerr<<
42         "new cannot satisfy memory request.\n"
43         "This does not necessarily mean you have run out of virtual memory.\n"
44         "It could be due to a stack violation caused "
45         "by e.g. bad use of pointers or an out of date shared library"
46         << std::endl;
48     ::abort();
51 void (*old_new_handler)() = std::set_new_handler(newError);
54 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
56 } // End namespace Foam
58 // ************************************************************************* //