Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/posix/src/stdio/scanf.c

    r013e5d32 ra35b458  
    676676                                if (!assign_supress) {
    677677                                        if (int_conv_unsigned) {
    678                                                 unsigned char *phh;
    679                                                 unsigned short *ph;
    680                                                 unsigned *pdef;
    681                                                 unsigned long *pl;
    682                                                 unsigned long long *pll;
    683                                                 uintmax_t *pj;
    684                                                 size_t *pz;
    685                                                 // XXX: What is unsigned counterpart of the ptrdiff_t?
    686                                                 size_t *pt;
    687                                                 void **pp;
    688 
    689678                                                switch (length_mod) {
    690                                                 case LMOD_hh:
    691                                                         phh = va_arg(arg, unsigned char *);
     679                                                case LMOD_hh: ; /* Label cannot be part of declaration. */
     680                                                        unsigned char *phh = va_arg(arg, unsigned char *);
    692681                                                        *phh = (unsigned char) ures;
    693682                                                        break;
    694                                                 case LMOD_h:
    695                                                         ph = va_arg(arg, unsigned short *);
     683                                                case LMOD_h: ;
     684                                                        unsigned short *ph = va_arg(arg, unsigned short *);
    696685                                                        *ph = (unsigned short) ures;
    697686                                                        break;
    698                                                 case LMOD_NONE:
    699                                                         pdef = va_arg(arg, unsigned *);
     687                                                case LMOD_NONE: ;
     688                                                        unsigned *pdef = va_arg(arg, unsigned *);
    700689                                                        *pdef = (unsigned) ures;
    701690                                                        break;
    702                                                 case LMOD_l:
    703                                                         pl = va_arg(arg, unsigned long *);
     691                                                case LMOD_l: ;
     692                                                        unsigned long *pl = va_arg(arg, unsigned long *);
    704693                                                        *pl = (unsigned long) ures;
    705694                                                        break;
    706                                                 case LMOD_ll:
    707                                                         pll = va_arg(arg, unsigned long long *);
     695                                                case LMOD_ll: ;
     696                                                        unsigned long long *pll = va_arg(arg, unsigned long long *);
    708697                                                        *pll = (unsigned long long) ures;
    709698                                                        break;
    710                                                 case LMOD_j:
    711                                                         pj = va_arg(arg, uintmax_t *);
     699                                                case LMOD_j: ;
     700                                                        uintmax_t *pj = va_arg(arg, uintmax_t *);
    712701                                                        *pj = (uintmax_t) ures;
    713702                                                        break;
    714                                                 case LMOD_z:
    715                                                         pz = va_arg(arg, size_t *);
     703                                                case LMOD_z: ;
     704                                                        size_t *pz = va_arg(arg, size_t *);
    716705                                                        *pz = (size_t) ures;
    717706                                                        break;
    718                                                 case LMOD_t:
    719                                                         pt = va_arg(arg, size_t *);
     707                                                case LMOD_t: ;
     708                                                        // XXX: What is unsigned counterpart of the ptrdiff_t?
     709                                                        size_t *pt = va_arg(arg, size_t *);
    720710                                                        *pt = (size_t) ures;
    721711                                                        break;
    722                                                 case LMOD_p:
    723                                                         pp = va_arg(arg, void **);
     712                                                case LMOD_p: ;
     713                                                        void **pp = va_arg(arg, void **);
    724714                                                        *pp = (void *) (uintptr_t) ures;
    725715                                                        break;
     
    728718                                                }
    729719                                        } else {
    730                                                 signed char *phh;
    731                                                 short *ph;
    732                                                 int *pdef;
    733                                                 long *pl;
    734                                                 long long *pll;
    735                                                 intmax_t *pj;
    736                                                 ssize_t *pz;
    737                                                 ptrdiff_t *pt;
    738 
    739720                                                switch (length_mod) {
    740                                                 case LMOD_hh:
    741                                                         phh = va_arg(arg, signed char *);
     721                                                case LMOD_hh: ; /* Label cannot be part of declaration. */
     722                                                        signed char *phh = va_arg(arg, signed char *);
    742723                                                        *phh = (signed char) sres;
    743724                                                        break;
    744                                                 case LMOD_h:
    745                                                         ph = va_arg(arg, short *);
     725                                                case LMOD_h: ;
     726                                                        short *ph = va_arg(arg, short *);
    746727                                                        *ph = (short) sres;
    747728                                                        break;
    748                                                 case LMOD_NONE:
    749                                                         pdef = va_arg(arg, int *);
     729                                                case LMOD_NONE: ;
     730                                                        int *pdef = va_arg(arg, int *);
    750731                                                        *pdef = (int) sres;
    751732                                                        break;
    752                                                 case LMOD_l:
    753                                                         pl = va_arg(arg, long *);
     733                                                case LMOD_l: ;
     734                                                        long *pl = va_arg(arg, long *);
    754735                                                        *pl = (long) sres;
    755736                                                        break;
    756                                                 case LMOD_ll:
    757                                                         pll = va_arg(arg, long long *);
     737                                                case LMOD_ll: ;
     738                                                        long long *pll = va_arg(arg, long long *);
    758739                                                        *pll = (long long) sres;
    759740                                                        break;
    760                                                 case LMOD_j:
    761                                                         pj = va_arg(arg, intmax_t *);
     741                                                case LMOD_j: ;
     742                                                        intmax_t *pj = va_arg(arg, intmax_t *);
    762743                                                        *pj = (intmax_t) sres;
    763744                                                        break;
    764                                                 case LMOD_z:
    765                                                         pz = va_arg(arg, ssize_t *);
     745                                                case LMOD_z: ;
     746                                                        ssize_t *pz = va_arg(arg, ssize_t *);
    766747                                                        *pz = (ssize_t) sres;
    767748                                                        break;
    768                                                 case LMOD_t:
    769                                                         pt = va_arg(arg, ptrdiff_t *);
     749                                                case LMOD_t: ;
     750                                                        ptrdiff_t *pt = va_arg(arg, ptrdiff_t *);
    770751                                                        *pt = (ptrdiff_t) sres;
    771752                                                        break;
     
    876857                                 * into the next output argument. */
    877858                                if (!assign_supress) {
    878                                         float *pf;
    879                                         double *pd;
    880                                         long double *pld;
    881859                                        switch (length_mod) {
    882                                         case LMOD_NONE:
    883                                                 pf = va_arg(arg, float *);
     860                                        case LMOD_NONE: ; /* Label cannot be part of declaration. */
     861                                                float *pf = va_arg(arg, float *);
    884862                                                *pf = fres;
    885863                                                break;
    886                                         case LMOD_l:
    887                                                 pd = va_arg(arg, double *);
     864                                        case LMOD_l: ;
     865                                                double *pd = va_arg(arg, double *);
    888866                                                *pd = dres;
    889867                                                break;
    890                                         case LMOD_L:
    891                                                 pld = va_arg(arg, long double *);
     868                                        case LMOD_L: ;
     869                                                long double *pld = va_arg(arg, long double *);
    892870                                                *pld = ldres;
    893871                                                break;
Note: See TracChangeset for help on using the changeset viewer.