github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/sql/logictest/testdata/logic_test/shift (about)

     1  # Check non-constant eval
     2  
     3  statement ok
     4  CREATE TABLE t AS SELECT 1 AS i
     5  
     6  statement error shift argument out of range
     7  SELECT i << 64 FROM t
     8  
     9  statement error shift argument out of range
    10  SELECT i >> 64 FROM t
    11  
    12  statement error shift argument out of range
    13  SELECT i << -1 FROM t
    14  
    15  statement error shift argument out of range
    16  SELECT i >> -1 FROM t
    17  
    18  query II
    19  SELECT i << 63 >> 63, i << 62 >> 62 FROM t
    20  ----
    21  -1 1
    22  
    23  # Check constant folding
    24  
    25  statement error shift argument out of range
    26  SELECT 1 << 64
    27  
    28  statement error shift argument out of range
    29  SELECT 1 >> 64
    30  
    31  statement error shift argument out of range
    32  SELECT 1 << -1
    33  
    34  statement error shift argument out of range
    35  SELECT 1 >> -1
    36  
    37  query II
    38  SELECT 1 << 63 >> 63, 1 << 62 >> 62
    39  ----
    40  -1 1
    41  
    42  # Ensure that shift returns the same result as an int or a constant
    43  
    44  query II
    45  SELECT 1 << 63 >> 63, 1::INT << 63 >> 63
    46  ----
    47  -1 -1