https://bugs.documentfoundation.org/show_bug.cgi?id=146608

Alain Romedenne <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|CInt conversion of date     |Unpredictable CInt(),
                   |literals raises Error       |CLng() results when given
                   |                            |erroneous date literals

--- Comment #2 from Alain Romedenne <[email protected]> ---
Ignore above comments and consider the following Basic routine:

Sub Date2Integer()
   Const DAY_ONE = #1899-12-30# ' = 1
   MAX_DATE = DateAdd("d", DAY_ONE, 2^15-2) ' #1989-09-16#
   Print CInt(#1989-09-16) , CInt(#09/16/1989) , MAX_DATE ' 1964 , 0 ,
#1989-09-16#
   Print CInt(#1989-09-16#), CInt(#09/16/1989#) ' 32767 , 32767
   Print CLng(#1989-09-16) , CLng(#09/16/1989) , MAX_DATE ' 1964 , 0 ,
#1989-09-16#
End Sub

- Erroneous date literals should raise Error #5 at runtime
OR BETTER
- Be trapped at compile time

When provided with valid date literals CInt() returns a valid 1-32667 number,
otherwise raises an overflow when dates are above MAX_DATE. 

Note: DateAdd() intercepts such invalid date syntax with Error #5

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to