[ruby-core:80456] [Ruby trunk Bug#13315] Single "%" at the end of `printf` format string appears in the result

From: sntr92@...
Date: 2017-03-29 07:47:08 UTC
List: ruby-core #80456
Issue #13315 has been updated by morishin (Shintaro Morikawa).


I believe this is not intentional, so created a pull-request on GitHub.

https://github.com/ruby/ruby/pull/1560

----------------------------------------
Bug #13315: Single "%" at the end of `printf` format string appears in the result
https://bugs.ruby-lang.org/issues/13315#change-63948

* Author: nobu (Nobuyoshi Nakada)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 
* Backport: 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN
----------------------------------------
Is this intentional?

```ruby
printf("%") #=> "%"
```

`printf` in glibc does print nothing, gcc warns though.

```c
#include <stdio.h>

int main(void)
{
  printf("%");
  return 0;
}
```

```sh
$ gcc fmt.c && ./a.out 
fmt.c: In function ‘main’:
fmt.c:5:10: warning: spurious trailing ‘%’ in format [-Wformat=]
   printf("%");
          ^
```

`printf` command of bash errs.

```sh
$ printf "%"
-bash: printf: `%': missing format character
```



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next