Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rogue } in locale.c Perl_init_i18nl10n #15513

Closed
p5pRT opened this issue Aug 14, 2016 · 6 comments
Closed

rogue } in locale.c Perl_init_i18nl10n #15513

p5pRT opened this issue Aug 14, 2016 · 6 comments

Comments

@p5pRT
Copy link

p5pRT commented Aug 14, 2016

Migrated from rt.perl.org#128926 (status was 'resolved')

Searchable as RT128926$

@p5pRT
Copy link
Author

p5pRT commented Aug 14, 2016

From @bulk88

Created by @bulk88

What conditional block is line 1036 closing in blead
http​://perl5.git.perl.org/perl.git/blob/cb198164564566deec7e26370654b1378a1a5f1d​:/locale.c#l1036
?

http​://perl5.git.perl.org/perl.git/commitdiff/5d1187d1639ce42a8a9283c8282136fa16d41e50

seems to have messed up what the "}" for USE_LOCALE_MESSAGES is closing.

My IDE says it closes "if (! setlocale_failure) {" branch but
indentation is wrong to support that theory since the indentation says
its supposed to close "if (! sl_result)" branch.

The bug was also shipped in 5.24 so backport is needed.

Perl Info

Flags:
     category=core
     severity=low

Site configuration information for perl 5.23.4:

Configured by Owner at Thu Oct  1 07:03:10 2015.

Summary of my perl5 (revision 5 version 23 subversion 4) configuration:
   Derived from: 8c763bac457cf183bba63ecccf78664ee81f0cf8
   Platform:
     osname=MSWin32, osvers=5.1, archname=MSWin32-x86-multi-thread
     uname=''
     config_args=''
     hint=recommended, useposix=true, d_sigaction=undef
     useithreads=define, usemultiplicity=define
     use64bitint=undef, use64bitall=undef, uselongdouble=undef
     usemymalloc=n, bincompat5005=undef
   Compiler:
     cc='cl', ccflags ='-nologo -GF -W3 -Od -MD -Zi -DDEBUGGING -DWIN32
-D_CONSOLE -DNO_STRICT  -DPERL_TEXTMODE_SCRIPTS -DNO_HASH_SEED
-DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -D_USE_32BIT_TIME_T',
     optimize='-Od -MD -Zi -DDEBUGGING',
     cppflags='-DWIN32'
     ccversion='13.10.6030', gccversion='', gccosandvers=''
     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234,
doublekind=3
     d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=8,
longdblkind=0
     ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='__int64',
lseeksize=8
     alignbytes=8, prototype=define
   Linker and Libraries:
     ld='link', ldflags ='-nologo -nodefaultlib -debug
  -libpath:"c:\perl521\lib\CORE"         -machine:x86'
     libpth=\lib
     libs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib
comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib
netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib
odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib
     perllibs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib
comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib
netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib
odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib
     libc=msvcrt.lib, so=dll, useshrplib=true, libperl=perl523.lib
     gnulibc_version=''
   Dynamic Linking:
     dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
     cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -debug
  -libpath:"c:\perl521\lib\CORE"         -machine:x86'

Locally applied patches:
     uncommitted-changes


@INC for perl 5.23.4:
     C:/perl521/site/lib
     C:/perl521/lib
     .


Environment for perl 5.23.4:
     HOME (unset)
     LANG (unset)
     LANGUAGE (unset)
     LD_LIBRARY_PATH (unset)
     LOGDIR (unset)
     PATH=C:\perl521\bin;C:\Program Files\Microsoft Visual Studio .NET
2003\Common7\IDE;C:\Program Files\Microsoft Visual Studio .NET
2003\VC7\BIN;C:\Program Files\Microsoft Visual Studio .NET
2003\Common7\Tools;C:\Program Files\Microsoft Visual Studio .NET
2003\Common7\Tools\bin\prerelease;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32\wbem;
     PERL_BADLANG (unset)
     SHELL (unset)



@p5pRT
Copy link
Author

p5pRT commented Aug 15, 2016

From @jkeenan

Subsequently fixed by khw in 9f42613.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Aug 15, 2016

The RT System itself - Status changed from 'new' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Aug 15, 2016

@jkeenan - Status changed from 'open' to 'resolved'

@p5pRT p5pRT closed this as completed Aug 15, 2016
@p5pRT
Copy link
Author

p5pRT commented Aug 16, 2016

From @cpansprout

On Sun Aug 14 06​:19​:14 2016, bulk88 wrote​:

This is a bug report for perl from bulk88@​hotmail.com,
generated with the help of perlbug 1.40 running under perl 5.23.4.

-----------------------------------------------------------------
[Please describe your issue here]

What conditional block is line 1036 closing in blead
http​://perl5.git.perl.org/perl.git/blob/cb198164564566deec7e26370654b1378a1a5f1d​:/locale.c#l1036
?

http​://perl5.git.perl.org/perl.git/commitdiff/5d1187d1639ce42a8a9283c8282136fa16d41e50

seems to have messed up what the "}" for USE_LOCALE_MESSAGES is
closing.

My IDE says it closes "if (! setlocale_failure) {" branch but
indentation is wrong to support that theory since the indentation says
its supposed to close "if (! sl_result)" branch.

The bug was also shipped in 5.24 so backport is needed.

I see that Karl Williamson has added this to the votes file.

I need to ask​: How did this code ever compile with a mistake like that? Did it actually fail to compile on some systems?

If it did not fail, then did it result in buggy behaviour?

(I don’t vote on commits I don’t really understand.)

--

Father Chrysostomos

@p5pRT
Copy link
Author

p5pRT commented Aug 16, 2016

From @khwilliamson

On 08/16/2016 02​:14 PM, Father Chrysostomos via RT wrote​:

On Sun Aug 14 06​:19​:14 2016, bulk88 wrote​:

This is a bug report for perl from bulk88@​hotmail.com,
generated with the help of perlbug 1.40 running under perl 5.23.4.

-----------------------------------------------------------------
[Please describe your issue here]

What conditional block is line 1036 closing in blead
http​://perl5.git.perl.org/perl.git/blob/cb198164564566deec7e26370654b1378a1a5f1d​:/locale.c#l1036
?

http​://perl5.git.perl.org/perl.git/commitdiff/5d1187d1639ce42a8a9283c8282136fa16d41e50

seems to have messed up what the "}" for USE_LOCALE_MESSAGES is
closing.

My IDE says it closes "if (! setlocale_failure) {" branch but
indentation is wrong to support that theory since the indentation says
its supposed to close "if (! sl_result)" branch.

The bug was also shipped in 5.24 so backport is needed.

I see that Karl Williamson has added this to the votes file.

I need to ask​: How did this code ever compile with a mistake like that? Did it actually fail to compile on some systems?

If it did not fail, then did it result in buggy behaviour?

(I don’t vote on commits I don’t really understand.)

Good policy!

This code only compiles on Ultrix, so doesn't show up normally. I
presume bulk88's IDE ignores the #ifdefs so it showed up as a problem
for him.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant