ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nginx-0.8.37



At Mon, 17 May 2010 12:00:28 +0400,
Boris Dolgov <boris@xxxxxxxxxxx> wrote:
> 
> 2010/5/17 Igor Sysoev <igor@xxxxxxxxx>:
> >> +#define ngx_str_set(str, text)                                            
> >>    > >> +    (str)->len = sizeof(text) - 1; (str)->data = (u_char *) text
> >> +#define ngx_str_null(str)   (str)->len = 0; (str)->data = NULL
> >>
> >>
> >> Не понятно, а чем плох вариант просто сделать
> >>
> >> #define ngx_string(str)     ((ngx_str_t) { sizeof(str) - 1, (u_char *) str 
> >> })
> >>
> >> и писать, соотвественно
> >>
> >> str = ngx_string("ABCD")?
> >
> > Он плох тем, что MSVC8 про него говорит так:
> > error C2059: syntax error : '{'
> 
> Получается ошибкопорождающее место при использовании в if'e/цикле:
> 
> ngx_str_set(x, "aaa");
> if(a) ngx_str_set(x, "abcd");
> 
> Может быть, имеет смысл делать вариант Кирилла для gcc, а для MSVС
> обернуть в do {} while (0)?
> 

не надо, совсем не надо так делать.

-- 
wbr, Kirill

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.