Bug #36046 Error in source sql/sql_bitmap.h avoids compilation
Submitted: 14 Apr 2008 6:23 Modified: 5 May 2008 10:06
Reporter: Frederic Meyer Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Compiling Severity:S2 (Serious)
Version:6.0.4 alpha OS:Linux (2.6.17.13-mm-laptop-3mdvsmp #1 SMP Tue Sep 19 23:36:56 EDT 2006 i686 Intel(R))
Assigned to: CPU Architecture:Any

[14 Apr 2008 6:23] Frederic Meyer
Description:
With configure command line:
./configure --prefix=/usr/local/mysql --mandir=/usr/share/man --infodir=/usr/share/info --enable-local-infile --enable-largefile --with-man --with-docs --with-innodb --with-csv-storage-engine --with-big-tables --with-mysqlmanager --with-pthread --enable-thread-safe-client --without-debug --with-server --with-geometry --with-extra-tools --without-example-storage-engine --with-archive-storage-engine --without-ndbcluster --enable-shared --enable-assembler --enable-grant-options --with-gnu-ld --with-tcp-port=3306 --with-unix-socket-path=/tmp/mysql.sock --with-mysqld-user=mysql --with-zlib-dir=bundled --without-pstack --with-error-inject --with-fast-mutexes --with-max-indexes=128 --with-ssl=yes --with-query-cache --with-plugins=partition,archive,blackhole,example,falcon,federated,innobase --without-plugin-ndbcluster --with-embedded-server --with-embedded-privilege-control --with-atomic-ops=smp

I had an error with file sql/sql_bitmap.h at line 71:
my_bool is_overlapping(const Bitmap& map2) const { return bitmap_is_overlapping(&map, map2.map); }

GCC (version: 4.2.2 20070909 (prerelease) (4.2.2-0.RC.1mdv2008.0)) sent me this message:
sql_bitmap.h: In member function ‘my_bool Bitmap<default_width>::is_overlapping(const Bitmap<default_width>&) const [with unsigned int default_width = 128u]’:
table.cc:4521:   instantiated from here
sql_bitmap.h:71: erreur: cannot convert ‘const MY_BITMAP’ to ‘const MY_BITMAP*’ for argument ‘2’ to ‘my_bool bitmap_is_overlapping(const MY_BITMAP*, const MY_BITMAP*)’

How to repeat:
I don't know, use configure command line and gcc version i used on linux i have, i suppose.

Suggested fix:
Change line 71, with this:
my_bool is_overlapping(const Bitmap& map2) const { return bitmap_is_overlapping(&map, &map2.map); }
[17 Apr 2008 0:42] Jay Edwards
Bug also on OS X 10.5.2. Fix works.
[5 May 2008 10:06] Susanne Ebrecht
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release.

If necessary, you can access the source repository and build the latest available version, including the bug fix. More information about accessing the source trees is available at

    http://dev.mysql.com/doc/en/installing-source.html