[ 
https://issues.apache.org/jira/browse/TS-1583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13502268#comment-13502268
 ] 

Alan M. Carroll commented on TS-1583:
-------------------------------------

I tested the proposed patch and it doesn't work on my gcc 4.6.3 because the 
unordered_map header requires additional compiler options (-std=c++0x). I have 
an alternative patch which is uglier but more functional for gcc 4.6.
                
> Visibility of hash_map unclear to GCC 4.7 when -std=c++11
> ---------------------------------------------------------
>
>                 Key: TS-1583
>                 URL: https://issues.apache.org/jira/browse/TS-1583
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: Build
>    Affects Versions: 3.3.0
>         Environment: Fedora 17 64bit - gcc 4.7
>            Reporter: Luca Rea
>         Attachments: ts-1583.patch
>
>
> master trunk
> {noformat}
> make[2]: Entering directory `/home/luca/trafficserver/proxy'
>   CXX    logstats.o
> logstats.cc:349:74: error: template argument 3 is invalid
> logstats.cc:349:89: error: invalid type in declaration before ‘;’ token
> logstats.cc:350:59: error: template argument 2 is invalid
> logstats.cc:350:70: error: invalid type in declaration before ‘;’ token
> logstats.cc:359:80: error: template argument 3 is invalid
> logstats.cc: In member function ‘void UrlLru::add_stat(const char*, int64_t, 
> int, int, int, int)’:
> logstats.cc:402:23: error: expected initializer before ‘h’
> logstats.cc:404:9: error: ‘h’ was not declared in this scope
> logstats.cc:404:20: error: request for member ‘end’ in 
> ‘((UrlLru*)this)->UrlLru::_hash’, which is of non-class type ‘UrlLru::LruHash 
> {aka int}’
> logstats.cc:461:21: error: request for member ‘find’ in 
> ‘((UrlLru*)this)->UrlLru::_hash’, which is of non-class type ‘UrlLru::LruHash 
> {aka int}’
> logstats.cc:462:26: error: request for member ‘end’ in 
> ‘((UrlLru*)this)->UrlLru::_hash’, which is of non-class type ‘UrlLru::LruHash 
> {aka int}’
> logstats.cc:463:19: error: request for member ‘erase’ in 
> ‘((UrlLru*)this)->UrlLru::_hash’, which is of non-class type ‘UrlLru::LruHash 
> {aka int}’
> logstats.cc:522:18: error: assignment of read-only location ‘*(u + 
> ((sizetype)((long unsigned int)((UrlLru*)this)->UrlLru::_hash)))’
> logstats.cc:522:18: error: cannot convert ‘std::list<UrlStats>::iterator {aka 
> std::_List_iterator<UrlStats>}’ to ‘const char’ in assignment
> logstats.cc: In member function ‘void UrlLru::_init()’:
> logstats.cc:536:13: error: request for member ‘resize’ in 
> ‘((UrlLru*)this)->UrlLru::_hash’, which is of non-class type ‘UrlLru::LruHash 
> {aka int}’
> logstats.cc: In function ‘int parse_log_buff(LogBufferHeader*, bool)’:
> logstats.cc:1183:27: error: expected initializer before ‘o_iter’
> logstats.cc:1347:43: error: request for member ‘find’ in ‘* origin_set’, 
> which is of non-class type ‘OriginSet {aka int}’
> logstats.cc:1347:68: error: request for member ‘end’ in ‘* origin_set’, which 
> is of non-class type ‘OriginSet {aka int}’
> logstats.cc:1348:15: error: ‘o_iter’ was not declared in this scope
> logstats.cc:1348:32: error: request for member ‘find’ in ‘origins’, which is 
> of non-class type ‘OriginStorage {aka int}’
> logstats.cc:1349:27: error: request for member ‘end’ in ‘origins’, which is 
> of non-class type ‘OriginStorage {aka int}’
> logstats.cc:1356:39: error: invalid conversion from ‘OriginStats*’ to ‘char’ 
> [-fpermissive]
> logstats.cc: In function ‘void my_exit(const ExitStatus&)’:
> logstats.cc:2132:16: error: request for member ‘empty’ in ‘origins’, which is 
> of non-class type ‘OriginStorage {aka int}’
> logstats.cc:2134:25: error: invalid use of qualified-name ‘::iterator’
> logstats.cc:2134:34: error: expected ‘;’ before ‘i’
> logstats.cc:2134:34: error: ‘i’ was not declared in this scope
> logstats.cc:2134:46: error: request for member ‘begin’ in ‘origins’, which is 
> of non-class type ‘OriginStorage {aka int}’
> logstats.cc:2134:68: error: request for member ‘end’ in ‘origins’, which is 
> of non-class type ‘OriginStorage {aka int}’
> logstats.cc:2134:73: error: expected ‘)’ before ‘;’ token
> logstats.cc:2134:75: error: ‘i’ was not declared in this scope
> logstats.cc:2134:78: error: expected ‘;’ before ‘)’ token
> logstats.cc: In function ‘int main(int, char**)’:
> logstats.cc:2295:21: error: request for member ‘insert’ in ‘* origin_set’, 
> which is of non-class type ‘OriginSet {aka int}’
> logstats.cc:2330:25: error: request for member ‘insert’ in ‘* origin_set’, 
> which is of non-class type ‘OriginSet {aka int}’
> make[2]: *** [logstats.o] Error 1
> make[2]: Leaving directory `/home/luca/trafficserver/proxy'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/luca/trafficserver/proxy'
> make: *** [all-recursive] Error 1
> {noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to