Issue 18203: VSIPL++ spec references nonexistent complex<int> types (vsiplxx-rtf) Source: (Mr. Brooks Moses, brooks.moses(at)dpdx.net) Nature: Revision Severity: Minor Summary: The specification defines complex_i as "The implementation shall define this type to be complex<short>, complex<int>, or complex<long int> such that the choice of underlying type is the same as scalar_i." This is problematic, because the C++ spec states that complex<T> is not necessarily defined when T is not float or double. In practice, GCC provides only incomplete definitions for the int/short/long cases. Since cscalar_i is only used in a very few places, I suggest that it should simply be removed from the spec. (The changelog in the back of the document mentions a change related to this, but the actual text does not appear to be changed.) Resolution: In the interest of closing the current RTF so that the solutions to resolved issues can be made publically available, this issue is deferred to the next RTF. Disposition: Deferred Revised Text: Actions taken: October 23, 2012: received issue Discussion: End of Annotations:===== te: Tue, 23 Oct 2012 10:59:41 -0700 From: Brooks Moses User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0.2) Gecko/20120216 Thunderbird/10.0.2 To: Subject: VSIPL++ issue (#8 from me) X-OriginalArrivalTime: 23 Oct 2012 17:59:41.0696 (UTC) FILETIME=[2D27D800:01CDB148] Name: Brooks Moses Employer: Mentor Graphics mailFrom: brooks_moses@mentor.com Terms_Agreement: I agree Specification: VSIPL++ Section: 3.2 [support.types] FormalNumber: ptc/2012-07-27 Version: 1.2 - FTF Beta 1 Doc_Year: 2012 Doc_Month: August Doc_Day: 10 Page: 8 Title: VSIPL++ spec references nonexistent complex types Nature: Bug Severity: Minor B1: Report Issue Description: The specification defines complex_i as "The implementation shall define this type to be complex, complex, or complex such that the choice of underlying type is the same as scalar_i." This is problematic, because the C++ spec states that complex is not necessarily defined when T is not float or double. In practice, GCC provides only incomplete definitions for the int/short/long cases. Since cscalar_i is only used in a very few places, I suggest that it should simply be removed from the spec. (The changelog in the back of the document mentions a change related to this, but the actual text does not appear to be changed.) - Brooks