<feed xmlns='http://www.w3.org/2005/Atom'>
<title>PROJ/src/proj_etmerc.c, branch 8.2.0</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>Fix warnings found by clang with new warning flags to be added in later commit</title>
<updated>2018-05-30T09:48:28+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2018-05-29T20:45:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=f773897a3025438326c1131e1586d9ddae080c4f'/>
<id>f773897a3025438326c1131e1586d9ddae080c4f</id>
<content type='text'>
Fixes consist in:
- no use of comma operator for multi statement purpose
- avoid confusing comma in for loops first and third clauses
- avoid implicit long to int casts by storing to long, or explicit bound checking before cast
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes consist in:
- no use of comma operator for multi statement purpose
- avoid confusing comma in for loops first and third clauses
- avoid implicit long to int casts by storing to long, or explicit bound checking before cast
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'master' into return-nans-quickly</title>
<updated>2018-05-23T11:41:08+00:00</updated>
<author>
<name>Kristian Evers</name>
<email>kristianevers@gmail.com</email>
</author>
<published>2018-05-23T11:14:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=f5c8188faa44ba8dbae533c295d6ae013422f3b9'/>
<id>f5c8188faa44ba8dbae533c295d6ae013422f3b9</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>Replace int typecasts with calls to lround to avoid bad conversions on NaN input. Added test to check for those cases.</title>
<updated>2018-05-08T07:16:07+00:00</updated>
<author>
<name>Kristian Evers</name>
<email>kristianevers@gmail.com</email>
</author>
<published>2018-05-06T14:43:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=58cbb9fe4f89b9febd780f7bdcfa4c2bb74a723e'/>
<id>58cbb9fe4f89b9febd780f7bdcfa4c2bb74a723e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Collect custom C99 math functions in proj_math.h</title>
<updated>2018-04-16T20:55:06+00:00</updated>
<author>
<name>Kristian Evers</name>
<email>kristianevers@gmail.com</email>
</author>
<published>2018-04-14T14:47:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=327a8f8b5a850167901a92747767e14ffe77c03b'/>
<id>327a8f8b5a850167901a92747767e14ffe77c03b</id>
<content type='text'>
We are relying more and more on C99 math functions. On C89 systems where
those functions are not available our own custom versions of those
functions are used instead. So far these has been spread across the code
base. This commit gathers them in the same file and introduces the
proj_math.h header. The build system checks for C99 math functions. If
not found the proj_math.h header make sure that C99 functions are
defined as their pj_ equivalent.

Ideally proj_math.h is included instead of math.h. This removes the need
for any checks against HAVE_C99_MATH in the code making it easier to
read.

For this commit the functions hypot, log1p and asinh has been taken care
of.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We are relying more and more on C99 math functions. On C89 systems where
those functions are not available our own custom versions of those
functions are used instead. So far these has been spread across the code
base. This commit gathers them in the same file and introduces the
proj_math.h header. The build system checks for C99 math functions. If
not found the proj_math.h header make sure that C99 functions are
defined as their pj_ equivalent.

Ideally proj_math.h is included instead of math.h. This removes the need
for any checks against HAVE_C99_MATH in the code making it easier to
read.

For this commit the functions hypot, log1p and asinh has been taken care
of.
</pre>
</div>
</content>
</entry>
<entry>
<title>Catch over range lam0 in proj_etmerc.c</title>
<updated>2018-03-25T20:51:58+00:00</updated>
<author>
<name>Kurt Schwehr</name>
<email>schwehr@google.com</email>
</author>
<published>2018-03-25T20:51:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=e52ab929670eaa65cc6c0284f24d3c0fa53f6bcc'/>
<id>e52ab929670eaa65cc6c0284f24d3c0fa53f6bcc</id>
<content type='text'>
lam0 of inf caused a nan in the cast to int.
Picked +/-1000 for lam0 as a guess for what constitutes reduculously large values.

proj_etmerc.c:361:16: runtime error: nan is outside the range of representable values of type 'int'

Found with autofuzz: UndefinedBehaviorSanitizer: float-cast-overflow
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
lam0 of inf caused a nan in the cast to int.
Picked +/-1000 for lam0 as a guess for what constitutes reduculously large values.

proj_etmerc.c:361:16: runtime error: nan is outside the range of representable values of type 'int'

Found with autofuzz: UndefinedBehaviorSanitizer: float-cast-overflow
</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>Remove or use unused macros</title>
<updated>2018-01-09T19:32:08+00:00</updated>
<author>
<name>Aaron Puchert</name>
<email>aaron.puchert@sap.com</email>
</author>
<published>2018-01-09T19:32:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=f7a1fe14454b091eecb5fd3e33ff73796a726da1'/>
<id>f7a1fe14454b091eecb5fd3e33ff73796a726da1</id>
<content type='text'>
Some macros seemed to be leftover from earlier code, so I removed them.
Others seemed like they should have been used, but weren't.

There should be no functional change, except the following: in floating-
point arithmetic, x / y is not the same as x * (1.0 / y). It can be
argued that using the multiplication is significantly faster, and the
algorithm is approximative anyway. Otherwise, the constants are
obviously not required.

Also fixes one location in PJ_aitoff.c, where an enumeration value
should have been used.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some macros seemed to be leftover from earlier code, so I removed them.
Others seemed like they should have been used, but weren't.

There should be no functional change, except the following: in floating-
point arithmetic, x / y is not the same as x * (1.0 / y). It can be
argued that using the multiplication is significantly faster, and the
algorithm is approximative anyway. Otherwise, the constants are
obviously not required.

Also fixes one location in PJ_aitoff.c, where an enumeration value
should have been used.
</pre>
</div>
</content>
</entry>
<entry>
<title>Removed remaining traces of the built in selftest system (#661)</title>
<updated>2017-11-12T23:33:40+00:00</updated>
<author>
<name>Thomas Knudsen</name>
<email>busstoptaktik@users.noreply.github.com</email>
</author>
<published>2017-11-12T23:33:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=06b2f944d7844bb898ace8a7973f9182aa2234b1'/>
<id>06b2f944d7844bb898ace8a7973f9182aa2234b1</id>
<content type='text'>
* Removed remaining traces of the builtin selftest system. Moved all functionality to test/gie

* Updated Appveyor and Travis build scripts

* Another appveyor script update
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Removed remaining traces of the builtin selftest system. Moved all functionality to test/gie

* Updated Appveyor and Travis build scripts

* Another appveyor script update
</pre>
</div>
</content>
</entry>
</feed>
