Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package Ipopt for openSUSE:Factory checked 
in at 2024-01-25 18:41:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/Ipopt (Old)
 and      /work/SRC/openSUSE:Factory/.Ipopt.new.1815 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "Ipopt"

Thu Jan 25 18:41:07 2024 rev:20 rq:1141262 version:3.14.14

Changes:
--------
--- /work/SRC/openSUSE:Factory/Ipopt/Ipopt.changes      2023-11-30 
22:01:14.264875217 +0100
+++ /work/SRC/openSUSE:Factory/.Ipopt.new.1815/Ipopt.changes    2024-01-25 
18:41:13.798709981 +0100
@@ -1,0 +2,13 @@
+Sat Jan 20 15:21:24 UTC 2024 - Atri Bhattacharya <badshah...@gmail.com>
+
+- Update to version 3.14.14:
+  * Fixed build of MA57 interface when FUNNY_MA57_FINT is defined
+    (MA57 with long integers).
+  * Fixed that initial dual values for fixed variables (z_L, z_U)
+    were ignored when doing a warm start with
+    fixed_variable_treatment = make_constraint
+    [gh#coin-or/Ipopt#728].
+  * Fixed that the last argument when calling MA27C[D] in MA27
+    interface was wrong [gh#coin-or/Ipopt#738].
+
+-------------------------------------------------------------------

Old:
----
  Ipopt-3.14.13.tar.gz

New:
----
  Ipopt-3.14.14.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ Ipopt.spec ++++++
--- /var/tmp/diff_new_pack.sb50EO/_old  2024-01-25 18:41:14.422732244 +0100
+++ /var/tmp/diff_new_pack.sb50EO/_new  2024-01-25 18:41:14.422732244 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package Ipopt
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
 %define sover 3
 %define shlib libipopt%{sover}
 Name:           Ipopt
-Version:        3.14.13
+Version:        3.14.14
 Release:        0
 Summary:        A software package for large-scale nonlinear optimization 
methods
 License:        EPL-2.0

++++++ Ipopt-3.14.13.tar.gz -> Ipopt-3.14.14.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Ipopt-releases-3.14.13/ChangeLog.md 
new/Ipopt-releases-3.14.14/ChangeLog.md
--- old/Ipopt-releases-3.14.13/ChangeLog.md     2023-11-08 11:24:21.000000000 
+0100
+++ new/Ipopt-releases-3.14.14/ChangeLog.md     2024-01-18 04:56:59.000000000 
+0100
@@ -7,6 +7,13 @@
 
 ## 3.14
 
+### 3.14.14 (2024-01-18)
+
+- Fixed build of MA57 interface when `FUNNY_MA57_FINT` is defined (MA57 with 
long integers).
+- Fixed that initial dual values for fixed variables (z_L, z_U) were ignored 
when doing a
+  warm start with fixed_variable_treatment = make_constraint [#728].
+- Fixed that the last argument when calling MA27CD/MA27C in MA27 interface was 
wrong [#738].
+
 ### 3.14.13 (2023-11-08)
 
 - Reduced priority for making Spral the default value for option linear_solver 
[#677].
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Ipopt-releases-3.14.13/README.md 
new/Ipopt-releases-3.14.14/README.md
--- old/Ipopt-releases-3.14.13/README.md        2023-11-08 11:24:21.000000000 
+0100
+++ new/Ipopt-releases-3.14.14/README.md        2024-01-18 04:56:59.000000000 
+0100
@@ -7,17 +7,16 @@
 Ipopt (Interior Point OPTimizer, pronounced eye-pea-Opt) is a software package 
for large-scale [nonlinear 
optimization](http://wiki.mcs.anl.gov/NEOS/index.php/Nonlinear_Programming_FAQ).
 It is designed to find (local) solutions of mathematical optimization problems 
of the form
 
-```
-   min     f(x)
-  x ∈ Rⁿ
-
-s.t.       g_L ≤ g(x) ≤ g_U
-           x_L ≤  x   ≤ x_U
-```
-where ```f(x): Rⁿ --> R``` is the objective function, and ```g(x): Rⁿ --> 
Rᵐ```
-are the constraint functions.  The vectors `g_L` and `g_U` denote the lower 
and upper bounds on the constraints, and the vectors `x_L` and `x_U` are the 
bounds on the variables `x`.
-The functions `f(x)` and `g(x)` can be nonlinear and nonconvex, but should be 
twice continuously differentiable.
-Note that equality constraints can be formulated in the above formulation by 
setting the corresponding components of `g_L` and `g_U` to the same value.
+$$\begin{align}
+\min_{x \in R^n}\ & f(x), \\
+\text{s.t.}\ & g_L \le g(x) \le g_U, \\
+& x_L \le x \le x_U,
+\end{align}$$
+
+where $f: R^n \rightarrow R$ is the objective function, 
+and $g: R^n \rightarrow R^m$ are the constraint functions.  The vectors $g_L$ 
and $g_U$ denote the lower and upper bounds on the constraints, and the vectors 
$x_L$ and $x_U$ are the bounds on the variables $x$.
+The functions $f(x)$ and $g(x)$ can be nonlinear and nonconvex, but should be 
twice continuously differentiable.
+Note that equality constraints can be formulated in the above formulation by 
setting the corresponding components of $g_L$ and $g_U$ to the same value.
 
 Ipopt is part of the [COIN-OR Initiative](http://www.coin-or.org).
 The Ipopt project webpage is <https://github.com/coin-or/Ipopt>.
@@ -62,8 +61,8 @@
 
 Ipopt requires at least one of the following solvers for systems of linear 
equations:
 - MA27, MA57, HSL_MA77, HSL_MA86, or HSL_MA97 from the [Harwell Subroutines 
Library](http://hsl.rl.ac.uk) (HSL).
-  It is recommended to use project 
[ThirdParty-HSL](https://github.com/coin-or-tools/ThirdParty-HSL) to build a 
HSL library for use by Ipopt.
-  Alternatively, prebuild libraries are available from JuliaHSL, see the 
[Ipopt installation 
instruction](https://coin-or.github.io/Ipopt/INSTALL.html#DOWNLOAD_HSL).
+  It is recommended to use project 
[ThirdParty-HSL](https://github.com/coin-or-tools/ThirdParty-HSL) to build a 
HSL library for use by Ipopt
+  or to use [prebuild macOS/Windows libraries from 
STFC](https://licences.stfc.ac.uk/product/libhsl), see the [Ipopt installation 
instruction](https://coin-or.github.io/Ipopt/INSTALL.html#DOWNLOAD_HSL).
 - [Parallel Sparse Direct Linear Solver](http://www.pardiso-project.org) 
(Pardiso).
   Note, that the Intel Math Kernel Library (MKL) also includes a version of 
Pardiso, but the one from Pardiso Project often offers better performance.
 - [Sparse Parallel Robust Algorithms Library](https://github.com/ralna/spral) 
(SPRAL).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Ipopt-releases-3.14.13/configure 
new/Ipopt-releases-3.14.14/configure
--- old/Ipopt-releases-3.14.13/configure        2023-11-08 11:24:21.000000000 
+0100
+++ new/Ipopt-releases-3.14.14/configure        2024-01-18 04:56:59.000000000 
+0100
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for Ipopt 3.14.13.
+# Generated by GNU Autoconf 2.71 for Ipopt 3.14.14.
 #
 # Report bugs to <https://github.com/coin-or/Ipopt/issues/new>.
 #
@@ -627,8 +627,8 @@
 # Identity of this package.
 PACKAGE_NAME='Ipopt'
 PACKAGE_TARNAME='ipopt'
-PACKAGE_VERSION='3.14.13'
-PACKAGE_STRING='Ipopt 3.14.13'
+PACKAGE_VERSION='3.14.14'
+PACKAGE_STRING='Ipopt 3.14.14'
 PACKAGE_BUGREPORT='https://github.com/coin-or/Ipopt/issues/new'
 PACKAGE_URL='https://github.com/coin-or/Ipopt'
 
@@ -1499,7 +1499,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Ipopt 3.14.13 to adapt to many kinds of systems.
+\`configure' configures Ipopt 3.14.14 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1570,7 +1570,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Ipopt 3.14.13:";;
+     short | recursive ) echo "Configuration of Ipopt 3.14.14:";;
    esac
   cat <<\_ACEOF
 
@@ -1773,7 +1773,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Ipopt configure 3.14.13
+Ipopt configure 3.14.14
 generated by GNU Autoconf 2.71
 
 Copyright (C) 2021 Free Software Foundation, Inc.
@@ -2658,7 +2658,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Ipopt $as_me 3.14.13, which was
+It was created by Ipopt $as_me 3.14.14, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -4279,7 +4279,7 @@
 
 
 
-printf "%s\n" "#define IPOPT_VERSION \"3.14.13\"" >>confdefs.h
+printf "%s\n" "#define IPOPT_VERSION \"3.14.14\"" >>confdefs.h
 
 
 printf "%s\n" "#define IPOPT_VERSION_MAJOR 3" >>confdefs.h
@@ -4288,7 +4288,7 @@
 printf "%s\n" "#define IPOPT_VERSION_MINOR 14" >>confdefs.h
 
 
-printf "%s\n" "#define IPOPT_VERSION_RELEASE 13" >>confdefs.h
+printf "%s\n" "#define IPOPT_VERSION_RELEASE 14" >>confdefs.h
 
 
 
@@ -4399,7 +4399,7 @@
 
 # Define the identity of the package.
  PACKAGE='ipopt'
- VERSION='3.14.13'
+ VERSION='3.14.14'
 
 
 # Some tools Automake needs.
@@ -22297,9 +22297,9 @@
 
 
 
-  LT_LDFLAGS="$LT_LDFLAGS -version-number 3:14:13"
-       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: libtool version info: 
-version-number 3:14:13" >&5
-printf "%s\n" "$as_me: libtool version info: -version-number 3:14:13" >&6;}
+  LT_LDFLAGS="$LT_LDFLAGS -version-number 3:14:14"
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: libtool version info: 
-version-number 3:14:14" >&5
+printf "%s\n" "$as_me: libtool version info: -version-number 3:14:14" >&6;}
 
 
   LT_LDFLAGS="$LT_LDFLAGS -no-undefined"
@@ -27980,7 +27980,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Ipopt $as_me 3.14.13, which was
+This file was extended by Ipopt $as_me 3.14.14, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -28053,7 +28053,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-Ipopt config.status 3.14.13
+Ipopt config.status 3.14.14
 configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Ipopt-releases-3.14.13/configure.ac 
new/Ipopt-releases-3.14.14/configure.ac
--- old/Ipopt-releases-3.14.13/configure.ac     2023-11-08 11:24:21.000000000 
+0100
+++ new/Ipopt-releases-3.14.14/configure.ac     2024-01-18 04:56:59.000000000 
+0100
@@ -8,7 +8,7 @@
 #                       Names and other basic things                        #
 #############################################################################
 
-AC_INIT([Ipopt],[3.14.13],[https://github.com/coin-or/Ipopt/issues/new],[],[https://github.com/coin-or/Ipopt])
+AC_INIT([Ipopt],[3.14.14],[https://github.com/coin-or/Ipopt/issues/new],[],[https://github.com/coin-or/Ipopt])
 
 AC_COPYRIGHT([
 Copyright 2004, 2011 International Business Machines and others.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/AmplSolver/ampl_sipopt.cpp 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/AmplSolver/ampl_sipopt.cpp
--- old/Ipopt-releases-3.14.13/contrib/sIPOPT/AmplSolver/ampl_sipopt.cpp        
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/contrib/sIPOPT/AmplSolver/ampl_sipopt.cpp        
2024-01-18 04:56:59.000000000 +0100
@@ -22,7 +22,7 @@
    app_ipopt->RethrowNonIpoptException(false);
 
    SmartPtr<SensApplication> app_sens = new 
SensApplication(app_ipopt->Jnlst(), app_ipopt->Options(),
-         app_ipopt->RegOptions());
+      app_ipopt->RegOptions());
 
    // Register sIPOPT options
    RegisterOptions_sIPOPT(app_ipopt->RegOptions());
@@ -124,7 +124,7 @@
 
    // create AmplSensTNLP from argc.
    SmartPtr<TNLP> sens_tnlp = new SensAmplTNLP(ConstPtr(app_ipopt->Jnlst()), 
app_ipopt->RegOptions(), app_ipopt->Options(), argc, suffix_handler,
-         false, ampl_options_list);
+      false, ampl_options_list);
 
    app_sens->Initialize();
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/examples/parametric_cpp/parametricTNLP.cpp
 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/examples/parametric_cpp/parametricTNLP.cpp
--- 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/examples/parametric_cpp/parametricTNLP.cpp
        2023-11-08 11:24:21.000000000 +0100
+++ 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/examples/parametric_cpp/parametricTNLP.cpp
        2024-01-18 04:56:59.000000000 +0100
@@ -308,7 +308,7 @@
 
    // Get access to the metadata, where the solutions are stored. The metadata 
is part of the DenseVectorSpace.
    SmartPtr<const DenseVectorSpace> x_owner_space = dynamic_cast<const 
DenseVectorSpace*>(GetRawPtr(
-            ip_data->curr()->x()->OwnerSpace()));
+         ip_data->curr()->x()->OwnerSpace()));
 
    if( !IsValid(x_owner_space) )
    {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/examples/parametric_cpp/parametric_driver.cpp
 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/examples/parametric_cpp/parametric_driver.cpp
--- 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/examples/parametric_cpp/parametric_driver.cpp
     2023-11-08 11:24:21.000000000 +0100
+++ 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/examples/parametric_cpp/parametric_driver.cpp
     2024-01-18 04:56:59.000000000 +0100
@@ -21,7 +21,7 @@
    SmartPtr<IpoptApplication> app_ipopt = new IpoptApplication();
 
    SmartPtr<SensApplication> app_sens = new 
SensApplication(app_ipopt->Jnlst(), app_ipopt->Options(),
-         app_ipopt->RegOptions());
+      app_ipopt->RegOptions());
 
    // Register sIPOPT options
    RegisterOptions_sIPOPT(app_ipopt->RegOptions());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/examples/parametric_dsdp_cpp/parametricTNLP.cpp
 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/examples/parametric_dsdp_cpp/parametricTNLP.cpp
--- 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/examples/parametric_dsdp_cpp/parametricTNLP.cpp
   2023-11-08 11:24:21.000000000 +0100
+++ 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/examples/parametric_dsdp_cpp/parametricTNLP.cpp
   2024-01-18 04:56:59.000000000 +0100
@@ -309,7 +309,7 @@
 
    // Get access to the metadata, where the solutions are stored. The metadata 
is part of the DenseVectorSpace.
    SmartPtr<const DenseVectorSpace> x_owner_space = dynamic_cast<const 
DenseVectorSpace*>(GetRawPtr(
-            ip_data->curr()->x()->OwnerSpace()));
+         ip_data->curr()->x()->OwnerSpace()));
 
    if( !IsValid(x_owner_space) )
    {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/examples/parametric_dsdp_cpp/parametric_dsdp_driver.cpp
 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/examples/parametric_dsdp_cpp/parametric_dsdp_driver.cpp
--- 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/examples/parametric_dsdp_cpp/parametric_dsdp_driver.cpp
   2023-11-08 11:24:21.000000000 +0100
+++ 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/examples/parametric_dsdp_cpp/parametric_dsdp_driver.cpp
   2024-01-18 04:56:59.000000000 +0100
@@ -21,7 +21,7 @@
    SmartPtr<IpoptApplication> app_ipopt = new IpoptApplication();
 
    SmartPtr<SensApplication> app_sens = new 
SensApplication(app_ipopt->Jnlst(), app_ipopt->Options(),
-         app_ipopt->RegOptions());
+      app_ipopt->RegOptions());
 
    // Register sIPOPT options
    RegisterOptions_sIPOPT(app_ipopt->RegOptions());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/examples/redhess_cpp/redhess_cpp.cpp 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/examples/redhess_cpp/redhess_cpp.cpp
--- 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/examples/redhess_cpp/redhess_cpp.cpp  
    2023-11-08 11:24:21.000000000 +0100
+++ 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/examples/redhess_cpp/redhess_cpp.cpp  
    2024-01-18 04:56:59.000000000 +0100
@@ -22,7 +22,7 @@
    SmartPtr<IpoptApplication> app_ipopt = new IpoptApplication();
 
    SmartPtr<SensApplication> app_sens = new 
SensApplication(app_ipopt->Jnlst(), app_ipopt->Options(),
-         app_ipopt->RegOptions());
+      app_ipopt->RegOptions());
 
    // Register sIPOPT options
    RegisterOptions_sIPOPT(app_ipopt->RegOptions());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/src/SensAlgorithm.cpp 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/src/SensAlgorithm.cpp
--- old/Ipopt-releases-3.14.13/contrib/sIPOPT/src/SensAlgorithm.cpp     
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/contrib/sIPOPT/src/SensAlgorithm.cpp     
2024-01-18 04:56:59.000000000 +0100
@@ -119,7 +119,7 @@
    statevalue = "sens_init_constr";
 
    SmartPtr<const DenseVectorSpace> x_owner_space_ = dynamic_cast<const 
DenseVectorSpace*>(
-            GetRawPtr(IpData().curr()->y_c()->OwnerSpace()));
+         GetRawPtr(IpData().curr()->y_c()->OwnerSpace()));
    const std::vector<Index> idx_ipopt = 
x_owner_space_->GetIntegerMetaData(state.c_str());
 
    np_ = 0;
@@ -220,7 +220,7 @@
    statevalue = "sens_init_constr";
 
    SmartPtr<const DenseVectorSpace> x_owner_space_ = dynamic_cast<const 
DenseVectorSpace*>(
-            GetRawPtr(IpData().curr()->y_c()->OwnerSpace()));
+         GetRawPtr(IpData().curr()->y_c()->OwnerSpace()));
    //= dynamic_cast<const 
DenseVectorSpace*>(GetRawPtr(IpData().curr()->x()->OwnerSpace()));
 
    const std::vector<Index> idx_ipopt = 
x_owner_space_->GetIntegerMetaData(state.c_str());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/contrib/sIPOPT/src/SensApplication.cpp 
new/Ipopt-releases-3.14.14/contrib/sIPOPT/src/SensApplication.cpp
--- old/Ipopt-releases-3.14.13/contrib/sIPOPT/src/SensApplication.cpp   
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/contrib/sIPOPT/src/SensApplication.cpp   
2024-01-18 04:56:59.000000000 +0100
@@ -163,7 +163,7 @@
       SmartPtr<SensBuilder> schur_builder = new SensBuilder();
       const std::string prefix = ""; // I should be getting this somewhere 
else...
       SmartPtr<ReducedHessianCalculator> red_hess_calc = 
schur_builder->BuildRedHessCalc(*jnlst_, *options_, prefix,
-            *ip_nlp_, *ip_data_, *ip_cq_, *pd_solver_);
+         *ip_nlp_, *ip_data_, *ip_cq_, *pd_solver_);
 
       red_hess_calc->ComputeReducedHessian();
    }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Ipopt-releases-3.14.13/doc/install.dox 
new/Ipopt-releases-3.14.14/doc/install.dox
--- old/Ipopt-releases-3.14.13/doc/install.dox  2023-11-08 11:24:21.000000000 
+0100
+++ new/Ipopt-releases-3.14.14/doc/install.dox  2024-01-18 04:56:59.000000000 
+0100
@@ -230,18 +230,11 @@
 \attention The build system of %Ipopt currently requires that MA27 is part
 of a HSL library, if a HSL library is provided.
 
-Next to the HSL source packages, also **prebuild libraries** of HSL are
-available in the HSL_Jll.jl package (directory `override`) from
-https://licences.stfc.ac.uk/product/julia-hsl.
-While these libraries are intended for use with Julia, they can also be
-used by %Ipopt without Julia when using the shared library loading mechanism
+Next to the HSL source packages, also **prebuild libraries** of HSL for macOS 
and Windows are
+available in the libHSL package from https://licences.stfc.ac.uk/product/libhsl
+and the Coin-HSL package from https://licences.stfc.ac.uk/product/coin-hsl.
+Both can be used by %Ipopt when using the shared library loading mechanism
 described \ref LINEARSOLVERLOADER "below".
-The HSL libs from HSL_Jll.jl have additional dependencies. If installing
-the package via Julia, the latter will automatically determine and install
-the dependencies. Without Julia, one can install the dependencies manually:
-[OpenBLAS32](https://github.com/JuliaBinaryWrappers/OpenBLAS32_jll.jl/releases),
-[METIS](https://github.com/JuliaBinaryWrappers/METIS_jll.jl/releases),
-[CompilerSupportLibraries](https://github.com/JuliaBinaryWrappers/CompilerSupportLibraries_jll.jl/releases).
 
 \note Whereas it is essential to have at least one linear solver, the
 package MC19 could be omitted (with the consequence that you cannot use
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/Inexact/IpInexactAlgBuilder.cpp 
new/Ipopt-releases-3.14.14/src/Algorithm/Inexact/IpInexactAlgBuilder.cpp
--- old/Ipopt-releases-3.14.13/src/Algorithm/Inexact/IpInexactAlgBuilder.cpp    
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Algorithm/Inexact/IpInexactAlgBuilder.cpp    
2024-01-18 04:56:59.000000000 +0100
@@ -211,18 +211,18 @@
    SmartPtr<InexactNewtonNormalStep> NewtonNormalStep = new 
InexactNewtonNormalStep(AugSolver);
 
    SmartPtr<InexactNormalStepCalculator> normal_step_calculator = new 
InexactDoglegNormalStep(NewtonNormalStep,
-         NormalTester);
+      NormalTester);
 
    SmartPtr<PDPerturbationHandler> perturbHandler = new 
PDPerturbationHandler();
 
    SmartPtr<InexactPDSolver> inexact_pd_solver = new 
InexactPDSolver(*AugSolver, *perturbHandler);
 
    SmartPtr<SearchDirectionCalculator> SearchDirCalc = new 
InexactSearchDirCalculator(normal_step_calculator,
-         inexact_pd_solver);
+      inexact_pd_solver);
 
    // Create the main algorithm
    SmartPtr<IpoptAlgorithm> alg = new IpoptAlgorithm(SearchDirCalc, 
GetRawPtr(lineSearch), MuUpdate, convCheck,
-         IterInitializer, IterOutput, HessUpdater, NULL, linear_solver);
+      IterInitializer, IterOutput, HessUpdater, NULL, linear_solver);
 
    return alg;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/IpAlgBuilder.cpp 
new/Ipopt-releases-3.14.14/src/Algorithm/IpAlgBuilder.cpp
--- old/Ipopt-releases-3.14.13/src/Algorithm/IpAlgBuilder.cpp   2023-11-08 
11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Algorithm/IpAlgBuilder.cpp   2024-01-18 
04:56:59.000000000 +0100
@@ -755,7 +755,7 @@
    MuUpdate_ = BuildMuUpdate(jnlst, options, prefix);
 
    SmartPtr<IpoptAlgorithm> alg = new IpoptAlgorithm(SearchDirCalc_, 
LineSearch_, MuUpdate_, ConvCheck_,
-         IterInitializer_, IterOutput_, HessUpdater_, EqMultCalculator_, 
linear_solver);
+      IterInitializer_, IterOutput_, HessUpdater_, EqMultCalculator_, 
linear_solver);
 
    return alg;
 }
@@ -851,7 +851,7 @@
    SmartPtr<IterateInitializer> WarmStartInitializer = new 
WarmStartIterateInitializer();
 
    SmartPtr<IterateInitializer> IterInitializer = new 
DefaultIterateInitializer(EqMultCalculator_, WarmStartInitializer,
-         GetAugSystemSolver(jnlst, options, prefix));
+      GetAugSystemSolver(jnlst, options, prefix));
    return IterInitializer;
 }
 
@@ -911,7 +911,7 @@
          resto_LSacceptor = new PenaltyLSAcceptor(GetRawPtr(resto_PDSolver));
       }
       SmartPtr<LineSearch> resto_LineSearch = new 
BacktrackingLineSearch(resto_LSacceptor, GetRawPtr(resto_resto),
-            GetRawPtr(resto_convCheck));
+         GetRawPtr(resto_convCheck));
 
       // Create the mu update that will be used by the restoration phase
       // algorithm
@@ -1007,8 +1007,8 @@
       }
 
       SmartPtr<IpoptAlgorithm> resto_alg = new 
IpoptAlgorithm(resto_SearchDirCalc, GetRawPtr(resto_LineSearch),
-            GetRawPtr(resto_MuUpdate), GetRawPtr(resto_convCheck), 
resto_IterInitializer, resto_IterOutput,
-            resto_HessUpdater, resto_EqMultCalculator, linear_solver);
+         GetRawPtr(resto_MuUpdate), GetRawPtr(resto_convCheck), 
resto_IterInitializer, resto_IterOutput,
+         resto_HessUpdater, resto_EqMultCalculator, linear_solver);
 
       // Set the restoration phase
       resto_phase = new MinC_1NrmRestorationPhase(*resto_alg, 
EqMultCalculator_);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/IpAugRestoSystemSolver.cpp 
new/Ipopt-releases-3.14.14/src/Algorithm/IpAugRestoSystemSolver.cpp
--- old/Ipopt-releases-3.14.13/src/Algorithm/IpAugRestoSystemSolver.cpp 
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Algorithm/IpAugRestoSystemSolver.cpp 
2024-01-18 04:56:59.000000000 +0100
@@ -355,7 +355,7 @@
          }
 
          neg_omega_c_plus_D_c_cache_.AddCachedResult3Dep(retVec, 
GetRawPtr(sigma_tilde_n_c_inv),
-               GetRawPtr(sigma_tilde_p_c_inv), D_c);
+                                    GetRawPtr(sigma_tilde_p_c_inv), D_c);
       }
    }
    return ConstPtr(retVec);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Ipopt-releases-3.14.13/src/Algorithm/IpIpoptData.cpp 
new/Ipopt-releases-3.14.14/src/Algorithm/IpIpoptData.cpp
--- old/Ipopt-releases-3.14.13/src/Algorithm/IpIpoptData.cpp    2023-11-08 
11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Algorithm/IpIpoptData.cpp    2024-01-18 
04:56:59.000000000 +0100
@@ -140,8 +140,8 @@
    new_s = new_y_d->MakeNew(); // same dimension as d
 
    iterates_space_ = new IteratesVectorSpace(*(new_x->OwnerSpace()), 
*(new_s->OwnerSpace()), *(new_y_c->OwnerSpace()),
-         *(new_y_d->OwnerSpace()), *(new_z_L->OwnerSpace()), 
*(new_z_U->OwnerSpace()), *(new_v_L->OwnerSpace()),
-         *(new_v_U->OwnerSpace()));
+      *(new_y_d->OwnerSpace()), *(new_z_L->OwnerSpace()), 
*(new_z_U->OwnerSpace()), *(new_v_L->OwnerSpace()),
+      *(new_v_U->OwnerSpace()));
 
    curr_ = iterates_space_->MakeNewIteratesVector(*new_x, *new_s, *new_y_c, 
*new_y_d, *new_z_L, *new_z_U, *new_v_L,
            *new_v_U);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/IpLimMemQuasiNewtonUpdater.cpp 
new/Ipopt-releases-3.14.14/src/Algorithm/IpLimMemQuasiNewtonUpdater.cpp
--- old/Ipopt-releases-3.14.13/src/Algorithm/IpLimMemQuasiNewtonUpdater.cpp     
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Algorithm/IpLimMemQuasiNewtonUpdater.cpp     
2024-01-18 04:56:59.000000000 +0100
@@ -644,7 +644,7 @@
             if( IsValid(Qminus) )
             {
                SmartPtr<MultiVectorMatrixSpace> U_space = new 
MultiVectorMatrixSpace(Qminus->NCols(),
-                     *s_new->OwnerSpace());
+                  *s_new->OwnerSpace());
                U_ = U_space->MakeNewMultiVectorMatrix();
                U_->AddRightMultMatrix(1., *Vtilde, *Qminus, 0.);
                DBG_PRINT_MATRIX(3, "U", *U_);
@@ -658,7 +658,7 @@
             if( IsValid(Qplus) )
             {
                SmartPtr<MultiVectorMatrixSpace> V_space = new 
MultiVectorMatrixSpace(Qplus->NCols(),
-                     *s_new->OwnerSpace());
+                  *s_new->OwnerSpace());
                V_ = V_space->MakeNewMultiVectorMatrix();
                V_->AddRightMultMatrix(1., *Vtilde, *Qplus, 0.);
                DBG_PRINT_MATRIX(3, "V", *V_);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/IpLowRankSSAugSystemSolver.cpp 
new/Ipopt-releases-3.14.14/src/Algorithm/IpLowRankSSAugSystemSolver.cpp
--- old/Ipopt-releases-3.14.13/src/Algorithm/IpLowRankSSAugSystemSolver.cpp     
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Algorithm/IpLowRankSSAugSystemSolver.cpp     
2024-01-18 04:56:59.000000000 +0100
@@ -248,13 +248,13 @@
          DBG_ASSERT(dynamic_cast<const ExpansionMatrix*>(GetRawPtr(P_LM)));
       }
       SmartPtr<ExpandedMultiVectorMatrixSpace> expanded_vu_space = new 
ExpandedMultiVectorMatrixSpace(max_rank_,
-            *LR_VecSpace, exp_matrix);
+         *LR_VecSpace, exp_matrix);
       expanded_vu_ = expanded_vu_space->MakeNewExpandedMultiVectorMatrix();
 
       // Create extended y_c quantities to include the V and U matrices
       DBG_ASSERT(IsNull(J_c_ext_));
       SmartPtr<CompoundMatrixSpace> J_c_ext_space = new CompoundMatrixSpace(2, 
1, proto_rhs_c.Dim() + max_rank_,
-            proto_rhs_x.Dim());
+         proto_rhs_x.Dim());
       J_c_ext_space->SetBlockRows(0, proto_rhs_c.Dim());
       J_c_ext_space->SetBlockRows(1, max_rank_);
       J_c_ext_space->SetBlockCols(0, proto_rhs_x.Dim());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/IpOrigIpoptNLP.cpp 
new/Ipopt-releases-3.14.14/src/Algorithm/IpOrigIpoptNLP.cpp
--- old/Ipopt-releases-3.14.13/src/Algorithm/IpOrigIpoptNLP.cpp 2023-11-08 
11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Algorithm/IpOrigIpoptNLP.cpp 2024-01-18 
04:56:59.000000000 +0100
@@ -263,7 +263,7 @@
          {
             DBG_ASSERT(IsValid(P_approx));
             h_space_ = new LowRankUpdateSymMatrixSpace(x_space_->Dim(), 
ConstPtr(P_approx), ConstPtr(approx_vecspace),
-                  true);
+               true);
             jnlst_->Printf(J_DETAILED, J_INITIALIZATION,
                            "Hessian approximation will be done in smaller 
space of dimension %" IPOPT_INDEX_FORMAT " (instead of %" IPOPT_INDEX_FORMAT 
")\n\n",
                            P_approx->NCols(), P_approx->NRows());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/IpRestoIpoptNLP.cpp 
new/Ipopt-releases-3.14.14/src/Algorithm/IpRestoIpoptNLP.cpp
--- old/Ipopt-releases-3.14.13/src/Algorithm/IpRestoIpoptNLP.cpp        
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Algorithm/IpRestoIpoptNLP.cpp        
2024-01-18 04:56:59.000000000 +0100
@@ -298,10 +298,10 @@
    if( hessian_approximation_ == LIMITED_MEMORY )
    {
       const LowRankUpdateSymMatrixSpace* LR_h_space = static_cast<const 
LowRankUpdateSymMatrixSpace*>(GetRawPtr(
-               orig_h_space));
+            orig_h_space));
       DBG_ASSERT(LR_h_space);
       SmartPtr<LowRankUpdateSymMatrixSpace> new_orig_h_space = new 
LowRankUpdateSymMatrixSpace(LR_h_space->Dim(),
-            NULL, orig_x_space, false);
+         NULL, orig_x_space, false);
       h_space_->SetCompSpace(0, 0, *new_orig_h_space, true);
    }
    else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/LinearSolvers/IpMa27TSolverInterface.cpp
 
new/Ipopt-releases-3.14.14/src/Algorithm/LinearSolvers/IpMa27TSolverInterface.cpp
--- 
old/Ipopt-releases-3.14.13/src/Algorithm/LinearSolvers/IpMa27TSolverInterface.cpp
   2023-11-08 11:24:21.000000000 +0100
+++ 
new/Ipopt-releases-3.14.14/src/Algorithm/LinearSolvers/IpMa27TSolverInterface.cpp
   2024-01-18 04:56:59.000000000 +0100
@@ -681,6 +681,7 @@
    Index N = dim_;
    Number* W = new Number[maxfrt_];
    Index* IW1 = new Index[nsteps_];
+   Index INFO[20];
 
    // For each right hand side, call MA27CX
    for( Index irhs = 0; irhs < nrhs; irhs++ )
@@ -692,7 +693,7 @@
             DBG_PRINT((2, "rhs[%5d] = %23.15e\n", i, rhs_vals[irhs * dim_ + 
i]));
          }
       }
-      ma27c(&N, a_, &la_, iw_, &liw_, W, &maxfrt_, &rhs_vals[irhs * dim_], 
IW1, &nsteps_, icntl_, cntl_);
+      ma27c(&N, a_, &la_, iw_, &liw_, W, &maxfrt_, &rhs_vals[irhs * dim_], 
IW1, &nsteps_, icntl_, INFO);
       if( DBG_VERBOSITY() >= 2 )
       {
          for( Index i = 0; i < dim_; i++ )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/LinearSolvers/IpMa27TSolverInterface.hpp
 
new/Ipopt-releases-3.14.14/src/Algorithm/LinearSolvers/IpMa27TSolverInterface.hpp
--- 
old/Ipopt-releases-3.14.13/src/Algorithm/LinearSolvers/IpMa27TSolverInterface.hpp
   2023-11-08 11:24:21.000000000 +0100
+++ 
new/Ipopt-releases-3.14.14/src/Algorithm/LinearSolvers/IpMa27TSolverInterface.hpp
   2024-01-18 04:56:59.000000000 +0100
@@ -61,7 +61,7 @@
    ipindex*   IW1,    \
    ipindex*   NSTEPS, \
    ipindex*   ICNTL,  \
-   ipnumber*  CNTL    \
+   ipindex*   INFO    \
 )
 
 /// @since 3.14.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/LinearSolvers/IpMa57TSolverInterface.cpp
 
new/Ipopt-releases-3.14.14/src/Algorithm/LinearSolvers/IpMa57TSolverInterface.cpp
--- 
old/Ipopt-releases-3.14.13/src/Algorithm/LinearSolvers/IpMa57TSolverInterface.cpp
   2023-11-08 11:24:21.000000000 +0100
+++ 
new/Ipopt-releases-3.14.14/src/Algorithm/LinearSolvers/IpMa57TSolverInterface.cpp
   2024-01-18 04:56:59.000000000 +0100
@@ -580,8 +580,8 @@
 
    wd_lfact_ = 0;
    wd_lifact_ = 0;
-   ComputeMemIncrease(wd_lfact_, (Number)wd_info_[8] * ma57_pre_alloc_, 0, 
"double working space for MA57");
-   ComputeMemIncrease(wd_lifact_, (Number)wd_info_[9] * ma57_pre_alloc_, 0, 
"integer working space for MA57");
+   ComputeMemIncrease(wd_lfact_, (Number)wd_info_[8] * ma57_pre_alloc_, 
(ma57int)0, "double working space for MA57");
+   ComputeMemIncrease(wd_lifact_, (Number)wd_info_[9] * ma57_pre_alloc_, 
(ma57int)0, "integer working space for MA57");
 
    // XXX MH:  Why is this necessary?  Is `::Factorization' called more
    // than once per object lifetime?  Where should allocation take
@@ -652,7 +652,7 @@
          Number* temp;
          ma57int ic = 0;
 
-         ComputeMemIncrease(wd_lfact_, (Number)wd_info_[16] * ma57_pre_alloc_, 
0, "double working space for MA57");
+         ComputeMemIncrease(wd_lfact_, (Number)wd_info_[16] * ma57_pre_alloc_, 
(ma57int)0, "double working space for MA57");
          Jnlst().Printf(J_WARNING, J_LINEAR_ALGEBRA,
                         "Reallocating memory for MA57: lfact (%" 
IPOPT_INDEX_FORMAT ")\n", wd_lfact_);
 
@@ -684,7 +684,7 @@
          ma57int* temp;
          ma57int ic = 1;
 
-         ComputeMemIncrease(wd_lifact_, (Number)wd_info_[17] * 
ma57_pre_alloc_, 0, "integer working space for MA57");
+         ComputeMemIncrease(wd_lifact_, (Number)wd_info_[17] * 
ma57_pre_alloc_, (ma57int)0, "integer working space for MA57");
          temp = new ma57int[wd_lifact_];
 
          Jnlst().Printf(J_DETAILED, J_LINEAR_ALGEBRA,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Algorithm/LinearSolvers/IpMa57TSolverInterface.hpp
 
new/Ipopt-releases-3.14.14/src/Algorithm/LinearSolvers/IpMa57TSolverInterface.hpp
--- 
old/Ipopt-releases-3.14.13/src/Algorithm/LinearSolvers/IpMa57TSolverInterface.hpp
   2023-11-08 11:24:21.000000000 +0100
+++ 
new/Ipopt-releases-3.14.14/src/Algorithm/LinearSolvers/IpMa57TSolverInterface.hpp
   2024-01-18 04:56:59.000000000 +0100
@@ -22,35 +22,35 @@
 
 /// @since 3.14.0
 #define IPOPT_DECL_MA57A(x) void (x)( \
-   ipindex*       n,     /**< Order of matrix. */ \
-   ipindex*       ne,    /**< Number of entries. */ \
-   const ipindex* irn,   /**< Matrix nonzero row structure */ \
-   const ipindex* jcn,   /**< Matrix nonzero column structure */ \
-   ipindex*       lkeep, /**< Workspace for the pivot order of lenght 3*n */ \
-   ipindex*       keep,  /**< Workspace for the pivot order of lenght 3*n */ \
+   ma57int*       n,     /**< Order of matrix. */ \
+   ma57int*       ne,    /**< Number of entries. */ \
+   const ma57int* irn,   /**< Matrix nonzero row structure */ \
+   const ma57int* jcn,   /**< Matrix nonzero column structure */ \
+   ma57int*       lkeep, /**< Workspace for the pivot order of lenght 3*n */ \
+   ma57int*       keep,  /**< Workspace for the pivot order of lenght 3*n */ \
    /* Automatically iflag = 0; ikeep pivot order iflag = 1 */ \
-   ipindex*       iwork, /**< Integer work space. */ \
-   ipindex*       icntl, /**< Integer Control parameter of length 30 */ \
-   ipindex*       info,  /**< Statistical Information; Integer array of length 
20 */ \
+   ma57int*       iwork, /**< Integer work space. */ \
+   ma57int*       icntl, /**< Integer Control parameter of length 30 */ \
+   ma57int*       info,  /**< Statistical Information; Integer array of length 
20 */ \
    ipnumber*      rinfo  /**< Double Control parameter of length 5 */ \
 )
 
 /// @since 3.14.0
 #define IPOPT_DECL_MA57B(x) void (x)( \
-   ipindex*   n,      /**< Order of matrix. */ \
-   ipindex*   ne,     /**< Number of entries. */ \
-   ipnumber* a,       /**< Numerical values. */ \
-   ipnumber* fact,    /**< Entries of factors. */ \
-   ipindex*   lfact,  /**< Length of array `fact'. */ \
-   ipindex*   ifact,  /**< Indexing info for factors. */ \
-   ipindex*   lifact, /**< Length of array `ifact'. */ \
-   ipindex*   lkeep,  /**< Length of array `keep'. */ \
-   ipindex*   keep,   /**< Integer array. */ \
-   ipindex*   iwork,  /**< Workspace of length `n'. */ \
-   ipindex*   icntl,  /**< Integer Control parameter of length 20. */ \
-   ipnumber* cntl,    /**< Double Control parameter of length 5. */ \
-   ipindex*   info,   /**< Statistical Information; Integer array of length 
40. */ \
-   ipnumber* rinfo    /**< Statistical Information; Real array of length 20. 
*/ \
+   ma57int*   n,      /**< Order of matrix. */ \
+   ma57int*   ne,     /**< Number of entries. */ \
+   ipnumber*  a,      /**< Numerical values. */ \
+   ipnumber*  fact,   /**< Entries of factors. */ \
+   ma57int*   lfact,  /**< Length of array `fact'. */ \
+   ma57int*   ifact,  /**< Indexing info for factors. */ \
+   ma57int*   lifact, /**< Length of array `ifact'. */ \
+   ma57int*   lkeep,  /**< Length of array `keep'. */ \
+   ma57int*   keep,   /**< Integer array. */ \
+   ma57int*   iwork,  /**< Workspace of length `n'. */ \
+   ma57int*   icntl,  /**< Integer Control parameter of length 20. */ \
+   ipnumber*  cntl,   /**< Double Control parameter of length 5. */ \
+   ma57int*   info,   /**< Statistical Information; Integer array of length 
40. */ \
+   ipnumber*  rinfo   /**< Statistical Information; Real array of length 20. 
*/ \
 )
 
 /* Solution job:  Solve for...
@@ -61,42 +61,42 @@
  */
 /// @since 3.14.0
 #define IPOPT_DECL_MA57C(x) void (x)( \
-   ipindex*   job,    /**< Solution job. */ \
-   ipindex*   n,      /**< Order of matrix. */ \
+   ma57int*   job,    /**< Solution job. */ \
+   ma57int*   n,      /**< Order of matrix. */ \
    ipnumber*  fact,   /**< Entries of factors. */ \
-   ipindex*   lfact,  /**< Length of array `fact'. */ \
-   ipindex*   ifact,  /**< Indexing info for factors. */ \
-   ipindex*   lifact, /**< Length of array `ifact'. */ \
-   ipindex*   nrhs,   /**< Number of right hand sides. */ \
+   ma57int*   lfact,  /**< Length of array `fact'. */ \
+   ma57int*   ifact,  /**< Indexing info for factors. */ \
+   ma57int*   lifact, /**< Length of array `ifact'. */ \
+   ma57int*   nrhs,   /**< Number of right hand sides. */ \
    ipnumber*  rhs,    /**< Numerical Values. */ \
-   ipindex*   lrhs,   /**< Leading dimensions of `rhs'. */ \
+   ma57int*   lrhs,   /**< Leading dimensions of `rhs'. */ \
    ipnumber*  work,   /**< Real workspace. */ \
-   ipindex*   lwork,  /**< Length of `work', >= N*NRHS. */ \
-   ipindex*   iwork,  /**< Integer array of length `n'. */ \
-   ipindex*   icntl,  /**< Integer Control parameter array of length 20. */ \
-   ipindex*   info    /**< Statistical Information; Integer array of length 
40. */ \
+   ma57int*   lwork,  /**< Length of `work', >= N*NRHS. */ \
+   ma57int*   iwork,  /**< Integer array of length `n'. */ \
+   ma57int*   icntl,  /**< Integer Control parameter array of length 20. */ \
+   ma57int*   info    /**< Statistical Information; Integer array of length 
40. */ \
 )
 
 /// @since 3.14.0
 #define IPOPT_DECL_MA57E(x) void (x)( \
-   ipindex*   n,      \
-   ipindex*   ic,  /**< 0: copy real array.  >=1:  copy integer array. */ \
-   ipindex*   keep,   \
+   ma57int*   n,      \
+   ma57int*   ic,  /**< 0: copy real array.  >=1:  copy integer array. */ \
+   ma57int*   keep,   \
    ipnumber*  fact,   \
-   ipindex*   lfact,  \
+   ma57int*   lfact,  \
    ipnumber*  newfac, \
-   ipindex*   lnew,   \
-   ipindex*   ifact,  \
-   ipindex*   lifact, \
-   ipindex*   newifc, \
-   ipindex*   linew,  \
-   ipindex*   info    \
+   ma57int*   lnew,   \
+   ma57int*   ifact,  \
+   ma57int*   lifact, \
+   ma57int*   newifc, \
+   ma57int*   linew,  \
+   ma57int*   info    \
 )
 
 /// @since 3.14.0
 #define IPOPT_DECL_MA57I(x) void (x)( \
    ipnumber* cntl, \
-   ipindex*   icntl \
+   ma57int*  icntl \
 )
 
 namespace Ipopt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Ipopt-releases-3.14.13/src/Common/IpRegOptions.cpp 
new/Ipopt-releases-3.14.14/src/Common/IpRegOptions.cpp
--- old/Ipopt-releases-3.14.13/src/Common/IpRegOptions.cpp      2023-11-08 
11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Common/IpRegOptions.cpp      2024-01-18 
04:56:59.000000000 +0100
@@ -863,7 +863,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_Number);
    option->SetDefaultNumber(default_value);
    AddOption(option);
@@ -880,7 +880,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_Number);
    option->SetDefaultNumber(default_value);
    option->SetLowerNumber(lower, strict);
@@ -898,7 +898,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_Number);
    option->SetDefaultNumber(default_value);
    option->SetUpperNumber(upper, strict);
@@ -918,7 +918,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_Number);
    option->SetDefaultNumber(default_value);
    option->SetLowerNumber(lower, lower_strict);
@@ -935,7 +935,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_Integer);
    option->SetDefaultInteger(default_value);
    AddOption(option);
@@ -951,7 +951,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_Integer);
    option->SetDefaultInteger(default_value);
    option->SetLowerInteger(lower);
@@ -968,7 +968,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_Integer);
    option->SetDefaultInteger(default_value);
    option->SetUpperInteger(upper);
@@ -986,7 +986,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_Integer);
    option->SetDefaultInteger(default_value);
    option->SetLowerInteger(lower);
@@ -1005,7 +1005,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    DBG_ASSERT(settings.size() == descriptions.size());
@@ -1027,7 +1027,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    option->AddValidStringSetting(setting1, description1);
@@ -1047,7 +1047,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    option->AddValidStringSetting(setting1, description1);
@@ -1070,7 +1070,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    option->AddValidStringSetting(setting1, description1);
@@ -1096,7 +1096,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    option->AddValidStringSetting(setting1, description1);
@@ -1125,7 +1125,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    option->AddValidStringSetting(setting1, description1);
@@ -1157,7 +1157,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    option->AddValidStringSetting(setting1, description1);
@@ -1192,7 +1192,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    option->AddValidStringSetting(setting1, description1);
@@ -1230,7 +1230,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    option->AddValidStringSetting(setting1, description1);
@@ -1271,7 +1271,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    option->AddValidStringSetting(setting1, description1);
@@ -1315,7 +1315,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value);
    option->AddValidStringSetting(setting1, description1);
@@ -1341,7 +1341,7 @@
 )
 {
    SmartPtr<RegisteredOption> option = new RegisteredOption(name, 
short_description, long_description,
-         current_registering_category_, next_counter_++, advanced);
+      current_registering_category_, next_counter_++, advanced);
    option->SetType(OT_String);
    option->SetDefaultString(default_value ? "yes" : "no");
    option->AddValidStringSetting("yes", "");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Common/config_ipopt_default.h 
new/Ipopt-releases-3.14.14/src/Common/config_ipopt_default.h
--- old/Ipopt-releases-3.14.13/src/Common/config_ipopt_default.h        
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Common/config_ipopt_default.h        
2024-01-18 04:56:59.000000000 +0100
@@ -5,7 +5,7 @@
 /***************************************************************************/
 
 /* Version number of project */
-#define IPOPT_VERSION "3.14.13"
+#define IPOPT_VERSION "3.14.14"
 
 /* Major Version number of project */
 #define IPOPT_VERSION_MAJOR 3
@@ -14,7 +14,7 @@
 #define IPOPT_VERSION_MINOR 14
 
 /* Release Version number of project */
-#define IPOPT_VERSION_RELEASE 13
+#define IPOPT_VERSION_RELEASE 14
 
 /* Define to the C type corresponding to Fortran INTEGER
  * @deprecated Use ipindex instead.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Interfaces/IpStdCInterface.cpp 
new/Ipopt-releases-3.14.14/src/Interfaces/IpStdCInterface.cpp
--- old/Ipopt-releases-3.14.13/src/Interfaces/IpStdCInterface.cpp       
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Interfaces/IpStdCInterface.cpp       
2024-01-18 04:56:59.000000000 +0100
@@ -261,13 +261,13 @@
    {
       // Create the original nlp
       ipopt_problem->tnlp = new Ipopt::StdInterfaceTNLP(ipopt_problem->n, 
ipopt_problem->x_L, ipopt_problem->x_U,
-            ipopt_problem->m, ipopt_problem->g_L, ipopt_problem->g_U,
-            ipopt_problem->nele_jac, ipopt_problem->nele_hess, 
ipopt_problem->index_style,
-            start_x, start_lam, start_z_L, start_z_U,
-            ipopt_problem->eval_f, ipopt_problem->eval_g, 
ipopt_problem->eval_grad_f, ipopt_problem->eval_jac_g, ipopt_problem->eval_h,
-            ipopt_problem->intermediate_cb,
-            x, mult_x_L, mult_x_U, g, mult_g, obj_val, user_data,
-            ipopt_problem->obj_scaling, ipopt_problem->x_scaling, 
ipopt_problem->g_scaling);
+         ipopt_problem->m, ipopt_problem->g_L, ipopt_problem->g_U,
+         ipopt_problem->nele_jac, ipopt_problem->nele_hess, 
ipopt_problem->index_style,
+         start_x, start_lam, start_z_L, start_z_U,
+         ipopt_problem->eval_f, ipopt_problem->eval_g, 
ipopt_problem->eval_grad_f, ipopt_problem->eval_jac_g, ipopt_problem->eval_h,
+         ipopt_problem->intermediate_cb,
+         x, mult_x_L, mult_x_U, g, mult_g, obj_val, user_data,
+         ipopt_problem->obj_scaling, ipopt_problem->x_scaling, 
ipopt_problem->g_scaling);
       status = ipopt_problem->app->OptimizeTNLP(ipopt_problem->tnlp);
    }
    catch( Ipopt::INVALID_STDINTERFACE_NLP& exc )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/src/Interfaces/IpTNLPAdapter.cpp 
new/Ipopt-releases-3.14.14/src/Interfaces/IpTNLPAdapter.cpp
--- old/Ipopt-releases-3.14.13/src/Interfaces/IpTNLPAdapter.cpp 2023-11-08 
11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/src/Interfaces/IpTNLPAdapter.cpp 2024-01-18 
04:56:59.000000000 +0100
@@ -1570,7 +1570,7 @@
    Number* full_z_u = new Number[n_full_x_];
    Number* full_lambda = new Number[n_full_g_];
    bool init_x = need_x;
-   bool init_z = need_z_L || need_z_U;
+   bool init_z = need_z_L || need_z_U || (fixed_variable_treatment_ == 
MAKE_CONSTRAINT && n_x_fixed_ > 0 && need_y_c);
    bool init_lambda = need_y_c || need_y_d;
 
    bool retvalue = tnlp_->get_starting_point(n_full_x_, init_x, full_x, 
init_z, full_z_l, full_z_u, n_full_g_,
@@ -1617,9 +1617,10 @@
       }
       if( fixed_variable_treatment_ == MAKE_CONSTRAINT )
       {
-         // ToDo maybe use info from z_L and Z_U here?
-         const Number zero = 0.;
-         IpBlasCopy(n_x_fixed_, &zero, 0, &values[P_c_g_->NCols()], 1);
+         for( Index i = 0; i < n_x_fixed_; i++ )
+         {
+            values[P_c_g_->NCols() + i] = full_z_u[x_fixed_map_[i]] - 
full_z_l[x_fixed_map_[i]];
+         }
       }
    }
 
@@ -2386,7 +2387,7 @@
       else
       {
          SmartPtr<ExpansionMatrixSpace> ex_sp = new 
ExpansionMatrixSpace(n_x_free, nonfixed_nonlin_vars,
-               nonfixed_pos_nonlin_vars);
+            nonfixed_pos_nonlin_vars);
          P_approx = ex_sp->MakeNew();
          approx_space = new DenseVectorSpace(nonfixed_nonlin_vars);
       }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Ipopt-releases-3.14.13/tutorial/CodingExercise/C/1-skeleton/TutorialC.c 
new/Ipopt-releases-3.14.14/tutorial/CodingExercise/C/1-skeleton/TutorialC.c
--- old/Ipopt-releases-3.14.13/tutorial/CodingExercise/C/1-skeleton/TutorialC.c 
2023-11-08 11:24:21.000000000 +0100
+++ new/Ipopt-releases-3.14.14/tutorial/CodingExercise/C/1-skeleton/TutorialC.c 
2024-01-18 04:56:59.000000000 +0100
@@ -142,17 +142,17 @@
    /* Number of nonzeros in the Jacobian of the constraints
     * each constraint has three nonzeros
     */
-   nele_jac = FILLME
+   nele_jac = FILLME;
 
-              /* Number of nonzeros in the Hessian of the Lagrangian (lower or
-               * upper triangual part only)
-               * We have the full diagonal, and the first off-diagonal except 
for
-               * the first and last variable.
-               */
-              nele_hess = FILLME
+   /* Number of nonzeros in the Hessian of the Lagrangian (lower or
+    * upper triangual part only)
+    * We have the full diagonal, and the first off-diagonal except for
+    * the first and last variable.
+    */
+   nele_hess = FILLME;
 
-                          /* indexing style for matrices */
-                          index_style = FILLME; /* C-style; start counting of 
rows and column indices at 0 */
+   /* indexing style for matrices */
+   index_style = FILLME; /* C-style; start counting of rows and column indices 
at 0 */
 
    /* create the IpoptProblem */
    nlp = CreateIpoptProblem(n, x_L, x_U, m, g_L, g_U, nele_jac, nele_hess, 
index_style, &eval_f, &eval_g, &eval_grad_f,

Reply via email to