# Code\_type/2: to\_upper/to\_lower bug?

**URL:** <https://swi-prolog.discourse.group/t/code-type-2-to-upper-to-lower-bug/6865>\
**Category:** General\
**Created:** [September 27, 2023, 6:38pm UTC](https://swi-prolog.discourse.group/t/code-type-2-to-upper-to-lower-bug/6865 "2023-09-27T18:38:56Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![swi](https://avatars.discourse-cdn.com/v4/letter/s/51bf81/32.png) [@swi](https://swi-prolog.discourse.group/u/swi)\
**Post date:** [September 27, 2023, 6:38pm UTC](https://swi-prolog.discourse.group/t/code-type-2-to-upper-to-lower-bug/6865/1 "2023-09-27T18:38:56Z")

</div>

```prolog
33 ?- LowerCase = `a`, code_type(LowerCase,to_upper(Upper)).
LowerCase = [97],
Upper = 97. # I would expect thiis to be 65

34 ?- LowerCase = `a`, code_type(LowerCase,to_lower(Lower)).
LowerCase = [97],
Lower = 65. # I would expect this to be 97

```

~~Am I missing something perhaps?~~  
Please ignore this post, I just saw in the [docs](https://www.swi-prolog.org/pldoc/man?predicate=char_type/2):

**to\_upper** (Lower)  
Char is an uppercase version of Lower. For non-letters, or letter without case, Char and Lower are the same. See also [upcase\_atom/2](https://www.swi-prolog.org/pldoc/man?predicate=upcase_atom/2) and [downcase\_atom/2](https://www.swi-prolog.org/pldoc/man?predicate=downcase_atom/2).
