<feed xmlns='http://www.w3.org/2005/Atom'>
<title>PROJ/src/pj_gauss.c, branch 6.3.1</title>
<subtitle>Forked from https://github.com/OSGeo/PROJ</subtitle>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/'/>
<entry>
<title>cpp conversion: minimal steps to fix compilation errors, not warnings</title>
<updated>2018-12-26T09:08:53+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2018-12-18T19:24:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=610957f7035242f15743c399ffd429b92bc36206'/>
<id>610957f7035242f15743c399ffd429b92bc36206</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>IWYU: Partial PJ_natearth.c..rtodms.c</title>
<updated>2018-05-15T20:42:20+00:00</updated>
<author>
<name>Kurt Schwehr</name>
<email>schwehr@google.com</email>
</author>
<published>2018-05-15T20:42:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=1e8824517900d37232468b9e3d7f3724e7ffa786'/>
<id>1e8824517900d37232468b9e3d7f3724e7ffa786</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Convert errno literals to corresponding PJD symbol</title>
<updated>2018-05-04T16:01:27+00:00</updated>
<author>
<name>Kurt Schwehr</name>
<email>schwehr@google.com</email>
</author>
<published>2018-05-04T16:01:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=72016ab016efe153f475a38596586fecd5b996d2'/>
<id>72016ab016efe153f475a38596586fecd5b996d2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Avoid shadowed declaration errors with old gcc</title>
<updated>2018-03-21T01:50:50+00:00</updated>
<author>
<name>Mike Toews</name>
<email>mwtoews@gmail.com</email>
</author>
<published>2018-03-21T01:50:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=1393f184ed69bf56cabc44b90b4149cc72e4cf64'/>
<id>1393f184ed69bf56cabc44b90b4149cc72e4cf64</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove angle brackets for proj headers (#849)</title>
<updated>2018-03-11T12:17:07+00:00</updated>
<author>
<name>Thomas Knudsen</name>
<email>busstoptaktik@users.noreply.github.com</email>
</author>
<published>2018-03-11T12:17:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=ab87b8ef0af7ef888b7d810db610ead6eb784d71'/>
<id>ab87b8ef0af7ef888b7d810db610ead6eb784d71</id>
<content type='text'>
* Avoid using angle brackets for PROJ headers.

Switching from #include &lt;proj.h&gt; to #include "proj.h",
and correspondingly for projects.h and proj_api.h,
reduces the risk of accidentally picking up a system
installed older version of the header while building
a new version of PROJ.

* Also handle geodesic.h
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Avoid using angle brackets for PROJ headers.

Switching from #include &lt;proj.h&gt; to #include "proj.h",
and correspondingly for projects.h and proj_api.h,
reduces the risk of accidentally picking up a system
installed older version of the header while building
a new version of PROJ.

* Also handle geodesic.h
</pre>
</div>
</content>
</entry>
<entry>
<title>Declare non-local variables as const where possible</title>
<updated>2017-12-17T22:34:40+00:00</updated>
<author>
<name>Aaron Puchert</name>
<email>aaron.puchert@sap.com</email>
</author>
<published>2017-11-17T16:46:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=a07501a165e6f2521c9aa13fa63fab33cf67d876'/>
<id>a07501a165e6f2521c9aa13fa63fab33cf67d876</id>
<content type='text'>
Having non-const variables of static lifetime or even global scope is
usually a bad idea. These variables are inherently constants, and this
should be enforced.

This required marking some functions as not modifying input parameters
and marking some pointers as pointers to const.

One advantage is that the compiler usually puts const static variables
in a read-only code segment, so they can't be modified physically.
This can be verified with `nm` (on POSIX systems).

To avoid changes to the public API, functions returning non-const
pointers to data tables were left intact, but the returned data may not
be modified. Internally we prefer using the proj_list_* functions over
the pj_get_*_ref functions, because the former return const pointers.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Having non-const variables of static lifetime or even global scope is
usually a bad idea. These variables are inherently constants, and this
should be enforced.

This required marking some functions as not modifying input parameters
and marking some pointers as pointers to const.

One advantage is that the compiler usually puts const static variables
in a read-only code segment, so they can't be modified physically.
This can be verified with `nm` (on POSIX systems).

To avoid changes to the public API, functions returning non-const
pointers to data tables were left intact, but the returned data may not
be modified. Internally we prefer using the proj_list_* functions over
the pj_get_*_ref functions, because the former return const pointers.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove confusing macros.</title>
<updated>2017-05-24T22:57:50+00:00</updated>
<author>
<name>Elliott Sales de Andrade</name>
<email>quantum.analyst@gmail.com</email>
</author>
<published>2017-05-24T22:45:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=4a563fe3005995d76cd987554e060e5fb96063a0'/>
<id>4a563fe3005995d76cd987554e060e5fb96063a0</id>
<content type='text'>
The upper-case macro `VAR` casts the lower-case variable `var` to an
expected type, but that usage obfuscates the variables to the casual
reader. This is especially prevalent in the allocation function in which
`var` is the correct type already, so both `var` and `VAR` are valid
*and* in use.

In any case, for those functions that don't obtain `var` in the correct
type from their parameters, it's much simpler to just case once at the
beginning.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The upper-case macro `VAR` casts the lower-case variable `var` to an
expected type, but that usage obfuscates the variables to the casual
reader. This is especially prevalent in the allocation function in which
`var` is the correct type already, so both `var` and `VAR` are valid
*and* in use.

In any case, for those functions that don't obtain `var` in the correct
type from their parameters, it's much simpler to just case once at the
beginning.
</pre>
</div>
</content>
</entry>
<entry>
<title>Avoid zero division in pj_gauss_ini().</title>
<updated>2017-05-24T10:32:28+00:00</updated>
<author>
<name>Kristian Evers</name>
<email>kristianevers@gmail.com</email>
</author>
<published>2017-05-24T10:32:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=6dbcf87705568a1756d7e142f0f6aee52301bd51'/>
<id>6dbcf87705568a1756d7e142f0f6aee52301bd51</id>
<content type='text'>
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1795

Credit to OSS-Fuzz.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1795

Credit to OSS-Fuzz.
</pre>
</div>
</content>
</entry>
<entry>
<title>Change math constants, similar to PR #372.  Use M_ namespace with the de facto standard M_PI and its ilk.  Change names that are widely used in the project to be in the M_ namespace, so HALFPI becomes M_HALFPI. HALFPI is #defined as M_PI_2 (the defacto standard name).  #defines _USE_MATH_DEFINES for MS Visual Studio (I didn't personally test this part, but Appveyor will not build otherwise).</title>
<updated>2016-05-28T16:26:35+00:00</updated>
<author>
<name>Micah Cochran</name>
<email>micahcochran@users.noreply.github.com</email>
</author>
<published>2016-05-28T16:26:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=3043b2f7fcf4471983c8d4472b17ccf9df1710c8'/>
<id>3043b2f7fcf4471983c8d4472b17ccf9df1710c8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove unused $Id$ keywords.</title>
<updated>2015-05-31T04:22:59+00:00</updated>
<author>
<name>Elliott Sales de Andrade</name>
<email>quantum.analyst@gmail.com</email>
</author>
<published>2015-05-31T04:22:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=5ed55f761233d1ab4ebbaa04354500aad27ad6a7'/>
<id>5ed55f761233d1ab4ebbaa04354500aad27ad6a7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
