windows machine gets assigned wrong netmask

I have a Debian based DHCP server. It assigns correct netmask for all devices (WiFi router, voip, scanner) except for the windows machines. They all get assigned for some reason. They are all set to receive IP over DHCP; no manipulations with routing tables was done. Why do they get configured this way?

Settings of the isc-dhcp-server:

option domain-name ""; option domain-name-servers,; option subnet-mask;  default-lease-time 600; max-lease-time 7200;  ddns-update-style none;  subnet netmask {   option routers;   option subnet-mask;   range; }  host gnulinuxpc {   hardware ethernet 00:30:48:b8:52:cb;   fixed-address;   option subnet-mask; }  host windowspc {   hardware ethernet 00:18:f3:5e:bb:d3;   fixed-address;   option subnet-mask; } 

PHP Strict Standards: Only variables should be assigned by reference

Here’s the code in question. It started looking like this:

    $  comments_by_type = &separate_comments(get_comments('status=approve&post_id=' . $  id));            return count($  comments_by_type['comment']); 

I removed the & signs per other posts I have seen but it didn’t help.
$ comments_by_type = separate_comments(get_comments(‘status=approve post_id=’ . $ id)); return count($ comments_by_type[‘comment’]);