CMake Borland Compiler Issues: Difference between revisions

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.