https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122085

            Bug ID: 122085
           Summary: Day_Of_Week returns wrong day
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ada
          Assignee: unassigned at gcc dot gnu.org
          Reporter: commaperiodsemicolon at gmail dot com
                CC: dkm at gcc dot gnu.org
  Target Milestone: ---

On gcc version 11.4.0 x86_64-linux-gnu:

Problem:
######################################################################
Ada.Calendar.Formatting.Day_Of_Week returns the wrong day.

Test Program:
######################################################################
with Ada.Text_IO;  use Ada.Text_IO;
with Ada.Calendar; use Ada.Calendar;
with Ada.Calendar.Formatting; use Ada.Calendar.Formatting;
with Ada.Calendar.Time_Zones; use Ada.Calendar.Time_Zones;

procedure Test_Day_Of_Week is
   Date : Time;
begin
   Date := Ada.Calendar.Formatting.Time_Of (Year => 2025, Month => 1, Day =>
1);
   Put_Line("2025 -- " & Day_Name'Image (Day_Of_Week(Date)));
   Date := Ada.Calendar.Formatting.Time_Of (Year => 2020, Month => 1, Day =>
1);
   Put_Line("2020 -- " & Day_Name'Image (Day_Of_Week(Date)));
   Date := Ada.Calendar.Formatting.Time_Of (Year => 2019, Month => 1, Day =>
1);
   Put_Line("2019 -- " & Day_Name'Image (Day_Of_Week(Date)));
   Date := Ada.Calendar.Formatting.Time_Of (Year => 2018, Month => 1, Day =>
1);
   Put_Line("2018 -- " & Day_Name'Image (Day_Of_Week(Date)));
   Date := Ada.Calendar.Formatting.Time_Of (Year => 2017, Month => 1, Day =>
1);
   Put_Line("2017 -- " & Day_Name'Image (Day_Of_Week(Date)));

end Test_Day_Of_Week;
#######################################################################

Program Output (stdout):
#######################################################################
> ./test_day_of_week
2025 -- TUESDAY
2020 -- TUESDAY
2019 -- MONDAY
2018 -- SUNDAY
2017 -- SATURDAY
#######################################################################

Validation (using cal utility):
#######################################################################
> cal 1 2025
    January 2025      
Su Mo Tu We Th Fr Sa  
          1  2  3  4  
 5  6  7  8  9 10 11  
12 13 14 15 16 17 18  
19 20 21 22 23 24 25  
26 27 28 29 30 31     
> cal 1 2020
    January 2020      
Su Mo Tu We Th Fr Sa  
          1  2  3  4  
 5  6  7  8  9 10 11  
12 13 14 15 16 17 18  
19 20 21 22 23 24 25  
26 27 28 29 30 31     
> cal 1 2019
    January 2019      
Su Mo Tu We Th Fr Sa  
       1  2  3  4  5  
 6  7  8  9 10 11 12  
13 14 15 16 17 18 19  
20 21 22 23 24 25 26  
27 28 29 30 31  
> cal 1 2018
    January 2018      
Su Mo Tu We Th Fr Sa  
    1  2  3  4  5  6  
 7  8  9 10 11 12 13  
14 15 16 17 18 19 20  
21 22 23 24 25 26 27  
28 29 30 31           
> cal 1 2017
    January 2017      
Su Mo Tu We Th Fr Sa  
 1  2  3  4  5  6  7  
 8  9 10 11 12 13 14  
15 16 17 18 19 20 21  
22 23 24 25 26 27 28  
29 30 31
  • [Bug ada/122085] New: D... commaperiodsemicolon at gmail dot com via Gcc-bugs

Reply via email to