Difference between revisions of "CMake Borland Compiler Issues"

From KitwarePublic
Jump to navigationJump to search
(Note about STL multisets with comparators)
(Replace content with link to new CMake community wiki)
 
Line 1: Line 1:
== '+' (plus) in the file name problem==
{{CMake/Template/Moved}}


* Borland linker when creating executable does not support '+' in the name.
This page has moved [https://gitlab.kitware.com/cmake/community/wikis/doc/cmake/platform_dependent_issues/Borland-Compiler-Issues here].
 
* CMake solves this problem by creating object files by replacing '+' with '_p_'.
 
== Broken streampos implementation ==
 
Using free bcc5.5.1.
 
<pre>
#include <iostream>
 
int main()
{
  std::streampos a = 9;
  long c = 10;
 
  if( a >= c )
  {
  std::cerr << "Impossible happen !" << std::endl;
  }
  else
  {
  std::cerr << "Seems resonable" << std::endl;
  }
 
  return 0;
}
</pre>
 
On borland a >= c is true ...
 
According to the doc:
 
http://www.cplusplus.com/ref/iostream/streampos.html
 
This type describes a class to contain all the information needed to restore an arbitrary file-position indicator within a stream. It can be constructed from or casted to an integer offset value (streamoff).
 
There is a bug in the definition of std::streampos::operator<= where the implementation do the contrary of what expected.
 
== STL multisets with comparators ==
 
The Borland 5.5 compiler's STL implementation does not properly copy comparators during assignment operations. For an example of how to work around this, see [http://public.kitware.com/cgi-bin/viewcvs.cgi/Rendering/vtkLabelHierarchy.cxx?r1=1.12&r2=1.13 vtkLabelHierarchy.cxx (rev 1.13)]
 
{{CMake/Template/Footer}}

Latest revision as of 15:41, 30 April 2018


The CMake community Wiki has moved to the Kitware GitLab Instance.

This page has moved here.